htaccess url变量问题

时间:2016-09-26 10:28:30

标签: php .htaccess mod-rewrite

所以我有一个小问题。

我将index.php页面作为存储在数据库中的所有页面数据的基页。我使用这个htaccess来重写我的所有页面,不包括博客中的帖子。

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

#ALL STANDARD PAGES
RewriteRule (.*) index.php [QSA,NC,L]

#TRIED ALL THESE, NO LUCK
#RewriteRule (.*) index.php?%{QUERY_STRING} [L]
#RewriteRule ^.+$ /index.php [L]
#RewriteRule ^((?!index\.php).+)$ /index.php [L]

#ALL SPECIAL POSTING PAGES
RewriteRule    ^/posts/([0-9]+)/?$    view_post.php?id=$1    [NC,L]

这适用于我在网址上没有变量的任何页面。

示例:

  

www.mysite.com/home | | www.mysite.com/contact

所有这些都完美地加载。但是,如果我添加任何变量,页面将崩溃为404.

示例:

  

www.mysite.com/contact?email=sent

我不确定该怎么做,我已经尝试在线搜索指南,教我正确的语法,谷歌搜索,如果其他人有同样的问题,到目前为止没有任何运气。< / p>

请帮忙。

1 个答案:

答案 0 :(得分:0)

试试这个,请注释掉以前的cond进行检查我假设您正在将这些请求www.mysite.com/contact重写为index.php页面。

RewriteEngine on
RewriteCond %{THE_REQUEST} ^(.*)$
RewriteRule ^ index.php [L]