不确定我的问题标题是否准确。我有一个这样的目录结构:
example.com/edit/43424242/
其中末尾的数字实际上不是文件夹。它实际上只是我想在/edit/index.php
目录中使用的一个变量。
我试着在根目录下的.htaccess文件中使用这个:
RewriteEngine ON
RewriteRule %{QUERY_STRING} ^$
RewriteRule ^edit/(.*)/?$ edit/index.php?var=$1 [NC,L]
但这不起作用,因为它把我的AJAX帖子弄乱了,放到了/edit/post.php
目录中的另一个文件中
所以我想也许我需要修改我的.htaccess文件,这样我仍然可以将子目录作为变量检索,并且仍然可以使用post.php,或者修改.htacccess,这样它就可以让index.php与post.php通信。
有什么想法吗?
RewriteRule %{QUERY_STRING} ^$
仅检查空查询字符串是不够的,因为它不会阻止此规则影响实际文件和目录的服务。
您可以使用以下规则:
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^edit/([w-]+)/?$ edit/index.php?var=$1 [NC,L,QSA]