apacheweb服务器中htaccess重定向的变化

apacheweb服务器中htaccess重定向的变化,apache,.htaccess,redirect,Apache,.htaccess,Redirect,我的问题是htaccess重定向的一个变体,这里已经发布了很多内容,感谢大家多年来的帮助。我尝试了各种各样的编码,但就是无法实现。需要对此进行永久301重定向: 重定向来自http://sub.domain.com(HTTP和HTTPS)到http://www.domain.com/sub/并将新的URL与后一个URL一起显示,其中“sub”是服务器上的子文件夹,以及我从中引导所有流量的子域的名称 尝试: Options +FollowSymLinks RewriteEngine On Rewr

我的问题是htaccess重定向的一个变体,这里已经发布了很多内容,感谢大家多年来的帮助。我尝试了各种各样的编码,但就是无法实现。需要对此进行永久301重定向:

重定向来自
http://sub.domain.com
(HTTP和HTTPS)到
http://www.domain.com/sub/
并将新的URL与后一个URL一起显示,其中“sub”是服务器上的子文件夹,以及我从中引导所有流量的子域的名称

尝试:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^sub.domain\.com$ [NC]
RewriteRule !^sub/ /sub%{REQUEST_URI} [L,NC]
旧站点是
sub.example.com
,另一台服务器上的新站点是
www.example.com/store

由于新站点位于另一台服务器上,您可能根本不需要检查
HTTP\u主机
。但是,如果您有其他(子)域,那么您可能会

在旧站点子域根目录下的.htaccess文件中:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} =sub.example.com [NC]
RewriteRule (.*) http://www.example.com/sub/$1 [R=301,L,NC]
请注意初始尝试中缺少的重定向标志(
R=301
)。如果没有这个(以及替换中的绝对URL),它将尝试进行内部重写

旧站点是
sub.example.com
,另一台服务器上的新站点是
www.example.com/store

由于新站点位于另一台服务器上,您可能根本不需要检查
HTTP\u主机
。但是,如果您有其他(子)域,那么您可能会

在旧站点子域根目录下的.htaccess文件中:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} =sub.example.com [NC]
RewriteRule (.*) http://www.example.com/sub/$1 [R=301,L,NC]

请注意初始尝试中缺少的重定向标志(
R=301
)。如果没有此URL(以及替换中的绝对URL),它将尝试进行内部重写。

您的.htaccess位于何处?实际发生了什么?目前htaccess位于现有的网站上,该网站正在托管Prestashop。我需要将访问者重定向到新网站。旧站点是store.ufcinc.com,另一台服务器上的新站点是www.ufcinc.com/store。工作完成后,我会在新主机上建立一个重定向页面,将旧的store.ufcinc.com指向新的站点/子文件夹。猜测一个简单的301就可以了,因为整个站点都需要重定向:重定向301/我就是这么做的,只是对整个站点使用了301重定向。完成。您所说的并用后一个URL显示新URL是什么意思?您的.htaccess位于何处?实际发生了什么?目前htaccess位于现有的网站上,该网站正在托管Prestashop。我需要将访问者重定向到新网站。旧站点是store.ufcinc.com,另一台服务器上的新站点是www.ufcinc.com/store。工作完成后,我会在新主机上建立一个重定向页面,将旧的store.ufcinc.com指向新的站点/子文件夹。猜测一个简单的301就可以了,因为整个站点都需要重定向:重定向301/我就是这么做的,只是对整个站点使用了301重定向。完成。