我建立了一个拥有SEO友好网址的网站,网站上的网址如下所示:http://www.somesite.com/seo/friendly/url
我还有一个用于测试网站的登台服务器。在此服务器上,URL看起来像这样:http://127.0.0.1 /〜somesite / seo / friendly / url
现在,搜索引擎优化网址在实际网站上工作,但测试失败,因为.htaccess中的替换也将/〜somesite子字符串捕获为变量。
如何从index.php所在的位置开始替换?
以下是我现在使用的替换代码:
RewriteRule ^(([\w\-\/])+)$ index.php?page=$1 [L,QSA]
答案 0 :(得分:0)
我认为这是不可能的,因为无法将目录路径与其余的url片段区分开来。最简单的方法是在每个站点根目录中部署.htaccess
而不是实际的Web根目录。在这种情况下,您之前的RewriteRule
就足够了。
RewriteRule ^([\w\-\/]+)$ index.php?page=$1 [L,QSA]
如果您具有以下目录结构并使用以下网址http://example.com/~mysite/seo/friendly/url
和http://example.com/sample/test/seo/friendly/url
,则它们都会生成相同的结果index.php?page=seo/friendly/url
。
~mysite/
.htaccess
index.php
sample/
test/
.htaccess
index.php