【发布时间】:2011-09-27 14:45:42
【问题描述】:
我刚开始使用 .htaccess 获取格式良好的网址,但我不确定自己做得对。
我当前的 .htaccess 文件如下所示:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^search/(.*) search.php?query=$1 [L]
RewriteRule !\.(gif|jpg|ico|css|js|txt|xml|png|swf)$ index.php
我想要的是 mysite.com/home/56/page-title 转到 index.php ,在那里我过滤掉数字并加载正确的索引页面,这工作正常。
在此之前,我想检查 url 是否指向 search.php,如果是,则重定向到 mysite.com/search/the-search-term,这也可以正常工作。
如果我尝试访问特定的 .php 文件(例如 mysite.com/control_panel.php),则不起作用的情况是——它只是将我带到 index.php,但我认为以下行阻止了这种情况的发生?
RewriteCond %{REQUEST_FILENAME} !-f
如果有人可以向我解释,那就太好了:)
谢谢!
【问题讨论】:
标签: regex .htaccess url-rewriting