这是我的简单htaccess,它将所有调用重定向到index.php或error.php
它工作正常,但我会隐藏地址栏中的原始地址。
#Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ [NC]
RewriteRule (.*) index.php [L]
ErrorDocument 404 /error.php
现在,如果我继续访问www.mysite.com/news/last 我可以查看www.mysite.com/index.php?p=news§ion=last 但我希望它在地址栏中没有改变。
提前致谢;)
答案 0 :(得分:0)
由于您将所有调用重定向到index.php文件,我猜你必须在php中构建路由器(或尝试使用已经构建的路由器)。 然后你必须配置(通过xml或php配置文件正常)你想要替换原始查询字符串的路由。 例如:
?的index.php P =新闻与节=最后
可以成为
/消息/最后
或您喜欢的任何字符串。 如果您需要示例或帮助如何创建路由系统,请询问=)
干杯