我正在使用 mod_rewrite 将“url.com/foo”之类的网站重写为“url.com/index.php?site=foo”。
编码:
RewriteEngine On
RewriteBase /
RewriteRule ^([0-9a-zA-Z]+)$ index.php?site=$1
如果我单击带有 href="/foo" 的链接,它会给我
http://url.com/foo/?site=foo
该代码在同一 V-Server 上的其他站点上工作,我安装了样板,但我现在不使用它的 .htaccess 来修复 mod_rewrite,所以它不能是样板问题,或者?
我还尝试了以下代码:
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ index.php?site=$1
该代码至少重写为 index.php?site=foo 但它仍然像上面的示例一样创建 url,中间有不必要的文件夹。
编辑:以确保每个人都理解整体想法:
这些文件基于http://url.com (index.php, .htaccess) ,所以我将 RewriteBase 设置为“/”。它应该采用类似的链接
http://url.com/foo
并将它们重写为
http://url.com/index.php?site=foo
不包含任何文件夹。