我有一个子域,我想这样重定向到主域(使用.htaccess
):
https://abc.example.com
我想将其重定向到https://www.example.com
https://abc.example.com/path/page-name
至https://www.example.com/path/page-name
https://abc.example.com/path/page-name?test=12&test1=12
至https://www.example.com/path/page-name?test=12&test1=12
请提出我的建议。
我已经尝试过以下解决方案,但无法正常工作。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(.+)\.example\.com$ [NC]
RewriteRule ^ http://www.example.com/suberror [L,R]
我正在使用Laravel。
答案 0 :(得分:1)
在此行:
RewriteRule ^ http://www.example.com/suberror [L,R]
没有pattern
表示,正则表达式已根据请求的URI进行了检查。
将其更改为此:
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R]
这部分^(.*)$
是pattern
,它将由substitution
在$1
中呈现
如果可以,请将[L,R]
更改为[L,R=301]
进行永久重定向,因为单独R
意味着R=302
是临时的。
答案 1 :(得分:1)
假设:
在ID
文件顶部尝试以下操作:
.htaccess
来自请求的URL路径保存在RewriteEngine On
RewriteCond %{HTTP_HOST} ^abc\.example\.com [NC]
RewriteRule ^ http://www.example.com%{REQUEST_URI} [R,L]
服务器变量中。来自请求的查询字符串将直接传递给替代(目标)。