apache - .htaccess重定向到子域

标签 apache .htaccess redirect

我想设置此方案,如果有人访问 website.com/blog/,他们将被重定向到 blog.website.com

我之前在.htaccess文件中使用了以下代码,以实现其他一些重定向(从.net到.com):

Options +FollowSymLinks
RewriteEngine on  
RewriteCond %{HTTP_HOST} ^(www.|blog.)?website.net(.*) [NC]  
RewriteRule (.*) http://www.website.com/$1 [R=301,L]

在我的apache配置文件中有一个 ErrorDocument 404 ,这也可能是相关的。

为了解决我的问题,我尝试了以下操作:
Options +FollowSymLinks
RewriteEngine on  
RewriteCond %{HTTP_HOST} ^(www.|blog.)?website.net(.*) [NC]  
RewriteRule (.*) http://www.website.com/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?website(.com|.net)/blog/?$ [NC]
RewriteRule (.*) http://blog.website.com/ [L]

但是此代码不起作用。我的错误文档仍在处理请求(/blog/目录不存在)。我尝试将新代码移动到apache conf文件中的ErrorDocument上方,但是发生了相同的事情。

毫无疑问这是一个语法错误,任何帮助将不胜感激:)

最佳答案

尝试将以下内容添加到.htaccess站点的根目录中的webiste.com文件中。

RewriteEngine on
RewriteBase / 

#if not already blog.website.com
RewriteCond %{HTTP_HOST} !^blog\.website\.com$ [NC] 
#if request is for blog/, go to blog.website.com
RewriteRule ^blog/$ http://blog.website.com [L,NC,R=301] 

关于apache - .htaccess重定向到子域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9334171/

相关文章:

apache 服务器 - 如何将 http 重定向到 https

apache - 文件不存在 c :/wamp/www/favicon. ico in apache error_log

javascript - 将nodejs集成到现有应用程序中

.htaccess 与 url 缩短器

javascript - 如何在 Javascript 重定向中保留 URL 参数?

ubuntu - Nginx 将 www 域重定向到非 www

python - 在 Apache 2.4 Web 服务器上运行 Python 3 脚本

apache - .htaccess 基于 URL 的一部分重定向

apache - 使用查询字符串停止 .htaccess 重定向

html - 如果服务器上不存在 HTML 文档,如何进行重定向