.htaccess htaccess将不带查询字符串的动态url重定向到查询字符串版本

.htaccess htaccess将不带查询字符串的动态url重定向到查询字符串版本,.htaccess,redirect,.htaccess,Redirect,我需要重定向这个: http://domain.com/anotherdomain.com 到 URLanotherdomain.com将是动态的。它应该只检测在根域之后输入的域,而不检测其他子文件夹。例: 应重定向 domain.com/anotherdomain.com domain.com/internet-marketing-services/search-engine-optimization-services/ 不应重定向 domain.com/anotherdomain.co

我需要重定向这个:

http://domain.com/anotherdomain.com

URL
anotherdomain.com
将是动态的。它应该只检测在根域之后输入的域,而不检测其他子文件夹。例:

应重定向

domain.com/anotherdomain.com
domain.com/internet-marketing-services/search-engine-optimization-services/
不应重定向

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>

重新启动发动机
重写cond%{QUERY_STRING}^$
重写规则^(/| index.php)$/link building services/?网站=%1[R=301,L]

它不起作用的原因是
%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]

它不起作用的原因是
%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]

给我一个重定向循环。重定向到
http://www.domain.com/link-building-services/?website=link-building services/
适用于我想做的事情,但也重定向所有其他链接。我只需要检测和重定向,如果一个域被输入,没有别的。但如何阻止一个域被输入?因为点的存在是不够的,因为URL可以
http://domain.com/anotherdomain.com
http://domain.com/style.css
它不需要万无一失,99.9%的时候人们不会这么做。如果他们这样做,我们不在乎。为了澄清我的问题,我修改了一点。给了我一个重定向循环。重定向到
http://www.domain.com/link-building-services/?website=link-building services/
适用于我想做的事情,但也重定向所有其他链接。我只需要检测和重定向,如果一个域被输入,没有别的。但如何阻止一个域被输入?因为点的存在是不够的,因为URL可以
http://domain.com/anotherdomain.com
http://domain.com/style.css
它不需要万无一失,99.9%的时候人们不会这么做。如果他们这样做,我们不在乎。我对我的问题稍加修改以澄清。