我不确定如何以简单的形式说出这个以返回相应的搜索结果,所以我创建了一个Stack。
我有两个域名。
Domain1.com
Domain2.com
我希望 Domain2.com 的所有实例自动重定向到 Domain1.com 。
如果为 Domain2.com 提供了段塞路径,我希望 Domain1.com 检测到该段塞路径被检测到。
然后,我希望 Domain1.com 检测来自 Domain2.com 的任何内容,并相应地重定向到 Domain1.com上匹配的slug路径
示例:
Domain2.com/this-slug
自动重定向到
Domain1.com/this-slug
...因为 Domain1.com 了解如何与 Domain2.com 完全一致,任何slu 如果与其一起传递。< / p>
我希望(我认为)这可以通过.htaccess完成,但我对其他方法持开放态度。在接下来的一年里,我希望转向NGINX,所以我不确定它是如何工作的,这就是为什么我当时愿意接受其他方法。
我认为与搜索结果的不同之处在于我确实希望自动完成此操作,而不是手动输入每个所需的slug路径。我实际上使用 Domain2.com 作为 Domain1.com 的共享网址。
答案 0 :(得分:0)
如果您想将 domain2.com/this-slug 重定向到 domain1.com/this-slug ,请将这些重写规则添加到domain2.com的htaccess文件中:< / p>
RewriteEngine On
# First condition, requested resource is not an existing file in domain2.com (this condition can be removed if needed)
RewriteCond %{REQUEST_FILENAME} !-f
# Second condition, requested resource is not an existing directory file in domain2.com (this condition can be removed if needed)
RewriteCond %{REQUEST_FILENAME} !-d
# Third condition, slug must exist
RewriteCond %{REQUEST_URI} !^/?$
# Do the redirection
RewriteRule ^(.*)$ http://domain1.com/$1 [R=301,QSA,L]
请注意,使用此重写规则 domain2.com/something/this-slug 会将重定向到 domain1.com/something/this-slug ,如果您不希望在请求URI中有中间斜杠时重定向,请将此作为第三个条件:
RewriteCond %{REQUEST_URI} ^/?[^/]+$