【发布时间】:2015-06-09 20:39:48
【问题描述】:
我有一个奇怪的问题。这是我的 htaccess 文件中 URL 重写的两个示例。第一个不起作用,并在 PHP 文件中将“查询”的变量返回为 null。
RewriteRule ^search/([A-Za-z0-9-\s]+)$ search.php?query=$1
第二个(我用作测试的)效果很好。
RewriteRule ^foo/([A-Za-z0-9-\s]+)$ search.php?query=$1
我发现问题在于模式的开头不能与我正在使用的php文件的名称相同。这一直对我有用,我现在才遇到这个问题,因为我已经搬到了一个新的服务器上。
是否有某种设置导致了这种情况?
【问题讨论】:
-
是wordpress吗?因为,wp 不喜欢你使用某些词,搜索就是其中之一。如果你正在使用 /search/somekeyword,wp 可能已经在使用 /search/
-
@DougCassidy 不,它不是 wordpress 或任何其他 CMS/框架。
-
似乎是多视图问题
标签: php regex apache .htaccess mod-rewrite