首页 文章

htaccess中的子域重定向[关闭]

提问于
浏览
8

我想知道使用htaccess规则是否可以使用以下方案 . 我想将一个子域重定向到另一个URL . 我已联系服务器管理员将“test”子域添加到“example.com”域 . 主域没有其他子域 .

我必须在htaccess中实现什么规则才能实现:http://test.example.com被重定向到http://www.something-else.com .

注意:www.something-else.com是一个复杂的网址(200个字符长度)

EDIT 我的完整htaccess文件现在看起来像:

Options +FollowSymLinks
RewriteEngine on
RewriteOptions inherit
RewriteBase /

RewriteCond %{HTTP_HOST} ^test.example.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/redir.php [L]

RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

htaccess文件位于example.com根目录 . 我没有物理访问测试子目录,虽然我知道它存在 - ping到该url显示我的example.com的IP

将test.example.com键入浏览器的地址栏无效 . 白屏,没有重定向,没有什么 . 如果那里有一些页面,我不知道 .

1 回答

  • 18

    对于静态网址:

    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^test.example.com$ [NC]
    RewriteRule ^(.*)$ https://www.somdomain.com/a/folder1/somepage?var=xxx&var2=xxx&var3=xxx&var4=http://another-domain.com/folder1/xxxxx/?&var5=xxx&var6=xxxx [R=301,NC,L]
    

    对于动态URL(如果原始域具有需要移动到其他域的文件夹):

    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^test.example.com$ [NC]
    RewriteRule ^(.*)$ https://www.somdomain.com%{REQUEST_URI} [R=301,NC,L,QSA]
    

    从你的编辑:

    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^test.example.com$ [NC]
    RewriteRule ^(.*)$ redir.php [R=301,NC,L]
    

相关问题