Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache PHP中查询字符串的HTACCESS重写规则_Apache_.htaccess_Mod Rewrite_Url Rewriting_Friendly Url - Fatal编程技术网

Apache PHP中查询字符串的HTACCESS重写规则

Apache PHP中查询字符串的HTACCESS重写规则,apache,.htaccess,mod-rewrite,url-rewriting,friendly-url,Apache,.htaccess,Mod Rewrite,Url Rewriting,Friendly Url,我有我的网址 我需要重写一个规则,使即使我删除了问号,链接将与以前一样工作,所以我的url需要被删除 目前,在.htaccess文件中,我只有一条规则,即打开php时不带扩展名.php RewriteEngine On RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC] RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L] RewriteCond %{REQUEST_FILENAME}.php -f

我有我的网址

我需要重写一个规则,使即使我删除了问号,链接将与以前一样工作,所以我的url需要被删除

目前,在.htaccess文件中,我只有一条规则,即打开php时不带扩展名.php

RewriteEngine On
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]

谢谢大家!

对于显示的示例,请尝试以下htaccess规则文件。请确保在测试URL之前清除浏览器缓存

RewriteEngine On
##keep redirection Rules first then keep rest of rules.
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php/?$ %{REQUEST_FILENAME}.php [QSA,L]

##Adding new rule here for non-existing pages here.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/?$ index.php?$1 [QSA,L]

非常感谢,这对我来说很有效,我认为这对所有需要这种规则的人来说都是一个很好的解决方案。