我有以这种格式的链接:http://www.EXAMPLE.com/index.php?page=pageid 它们也可在以下网址获得:http://www.EXAMPLE.com/?page=pageid
如何重定向没有index.php文件名的文件来使用url的index.php部分?
我的htaccess文件中有其他重定向规则,它们工作正常,我只是不知道如何强制index.php部分并包含查询字符串。
答案 0 :(得分:4)
将以下规则放在网站根目录中的.htaccess文件中
RewriteEngine On
RewriteBase /
#only for the root directory
RewriteCond %{REQUEST_URI} ^/$
#if the uri is not already index.php
RewriteCond %{REQUEST_URI} !^/index.php [NC]
RewriteRule ^$ /index.php [R=301,L]
如果仍然与其他规则发生冲突,您可以通过在上面的重写规则之前添加followind条件,将此规则进一步限制为只有page=
查询字符串参数的请求
# to limit further to only the requests with a page= param
RewriteCond %{QUERY_STRING} ^([^&]+&)*page=.*$ [NC]