我需要重定向一下:
http://domain.com/anotherdomain.com
到
http://domain.com/subfolder/?website=anotherdomain.com
网址anotherdomain.com
将是动态的。它应该只检测在根域之后输入的域而不是其他子文件夹。例如:
应该重定向
domain.com/anotherdomain.com
不应该重定向
domain.com/internet-marketing-services/search-engine-optimization-services/
我尝试了什么:
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(/|index.php)?$ /link-building-services/?website=%1 [R=301,L]
</IfModule>
答案 0 :(得分:1)
无法正常工作的原因是因为%1
是RewriteCond
中捕获的匹配组,并且您没有捕获RewriteCond
中的任何内容。 RewriteRule
中捕获的变量由$1, $2, $3
等表示。
用以下代码替换您的代码:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^([^.]+\..+)$ /link-building-services/?website=$1 [R=301,L]