htaccess只将主域重写为子文件夹

时间:2017-07-19 06:27:36

标签: .htaccess redirect mod-rewrite dns cpanel

我正在使用cPanel帐户来托管多个网站。要使用干净的public_html,我使用.htaccess将主域重定向到其中一个子文件夹。

因此,当用户在 www.example.com 中输入内容时,它会被重写为 www.example.com/mainsite / ,但仍会显示 www.example URL中的.com

但是当使用下面的代码时,每个域(包括子域)都将被重定向到该文件夹​​:

RewriteCond %{REQUEST_URI} !^/example
RewriteRule ^(.*)$ /mainsite/$1 [NC,L]

如何定位 www.example.com (以及 www.example.com/files )以重写为/ mainsite?

  

*其他子域应该指向他们自己创建的Document_Root。

1 个答案:

答案 0 :(得分:1)

您还需要一个RewriteCond来检查主域名:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?:www\.)?example\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/mainsite/ [NC]
RewriteRule ^(.*)$ /mainsite/$1 [L]