我跟随.htaccess文件的代码。该文件位于子文件夹中,可以说/ content /。的.htaccess:重写规则问题
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^([^/]+)(/([^/]+))?(/(edit)+)(/([^/]+))?/?$ edit.php?category=$1&slug=$3&edit=$5&password=$7 [L]
RewriteRule ^([^/]+)(/([^/]+)?/?)$ content.php?category=$1&slug=$3 [L]
我期待上面的代码将改写,
- mydomain.com/content/text1/text2/edit/my_password到mydomain.com/content/edit.php?category=text1 &蛞蝓= text2的&密码= MY_PASSWORD
- mydomain.com/content/text1/text2到mydomain.com/content/content.php?category=text1 &蛞蝓= text2的
- mydomain.com/content/text1到MYDOMAIN。 COM /内容/ content.php?CATEG ORY =文本1
- mydomain.com/content/到mydomain.com/content/content.php
上面的代码正确地重写,但它破坏了资产网址。 例如它将http://mydomain.com/content/js/tms.js重写为其他内容,对于css文件也是如此。我的资产文件夹是/ img,/ css,/ js。
如果我评论RewriteRule ^([^/]+)(/([^/]+))?(/(edit)+)(/([^/]+))?/?$ edit.php?category=$1&slug=$3&edit=$5&password=$7 [L]
线它适用于资产
任何想法如何解决这一问题?
是'/内容/文本1 /文本2 /编辑/ my_password'实际的文件或目录?您的条件检查URI是否存在的文件/目录。 – 2013-03-03 11:47:38
@Jon“content”是根目录上的一个文件夹。其他人不是.. – user1955714 2013-03-03 11:53:57
如果其他人不是真正的目录,我不明白当它的条件是请求(如'/ content/text1/text2/edit/my_password')时,第一条规则如何工作? **必须**是现有的符号链接,现有文件或现有目录。第二条规则根本就没有条件,所以我至少可以看到有一个人在@JonLin工作 – 2013-03-03 11:57:10