我知道有很多关于此的答案,但我不明白为什么它对我不起作用。
我希望每个网址都像:
http://mywebsite.com/campagne/blabla
重定向到
http://mywebsite.com/campagne.php?c=blabla
这是我的.htaccess文件:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteRule campagne/(.+)$ campagne.php?c=$1 [QSA,L] [L]
网址被重定向到campagne.php,但未发送$ _GET ['c']。
你能帮帮我吗?我找不到有什么问题?它可以在我的本地服务器上运行,但不能在线运行。答案 0 :(得分:1)
这是因为在Apache中启用了MultiViews
选项。将此行放在.htaccess的顶部以将其关闭:
Options -MultiViews
MultiViews
使用选项Apache's content negotiation module
在 mod_rewrite
之前运行,并使Apache服务器匹配文件扩展名。因此/file
可以在网址中,但它会投放/file.php
。