URL重写工作正常,但PHP不使用GET获取变量

URL重写工作正常,但PHP不使用GET获取变量,php,.htaccess,mod-rewrite,url-rewriting,get,Php,.htaccess,Mod Rewrite,Url Rewriting,Get,服务器移动后,我的htaccess重写规则出现了一些问题 不管出于什么原因,我的旧指令不再起作用了 我的Htaces有以下行: RewriteEngine On RewriteRule ^ads/mobile/([a-z0-9_-]+)/?$ /ads.php?ptid=6&tube_id=$1 [NC,L] 我没有得到任何500或404的错误。 url栏显示重写模式下的url OK, 但是php没有从重写的url获取GET变量 如果我使用url上的vars访问ads.php,那么它就

服务器移动后,我的htaccess重写规则出现了一些问题

不管出于什么原因,我的旧指令不再起作用了

我的Htaces有以下行:

RewriteEngine On
RewriteRule ^ads/mobile/([a-z0-9_-]+)/?$ /ads.php?ptid=6&tube_id=$1 [NC,L]
我没有得到任何500或404的错误。 url栏显示重写模式下的url OK, 但是php没有从重写的url获取GET变量

如果我使用url上的vars访问ads.php,那么它就工作得很好

有什么想法吗? 我从NC、L改为QSA,还删除了ads.php之前的“/”,但没有任何效果

我将感谢任何帮助。我在这里寻找类似的东西,但没有任何东西适合我。

最后,这是我的错。 它不起作用,因为我没有将文件/etc/apache2/(站点)上的所有allowoverride设置从NONE更改为allowoverride

现在可以了!
感谢

这很可能是由于启用了
多视图
选项

将这一行放在
.htaccess
的顶部即可将其关闭:

Options -MultiViews

注意:在Apachen中启用mod_rewrite这是一个工作示例
RewriteRule^(+)$index.php?url=$1[QSA,L]
,如果有帮助的话。