.htaccess文件 子目录绑定二级域名
linux虚拟主机的控制面版多是CPANEL,默认绑定主域名的根目录为public_html
如果要使域名yourdomain.com能直接访问,就要把所有文件全直接放进根目录下。
如果想再建个子站,bbs.yourdomain.com,这时BBS目录就和其他php文件或主站的文件夹混在一起,维护起来不方便。
对于支持.htaccess文件的LINUX主机,可以通过.htaccess文件来实现转向。
以下以blog目录和blog.pweb123.com域名为例。
- # 开启功能
- RewriteEngine on
- # 要绑定的二级域名
- RewriteCond %{HTTP_HOST} ^(blog.)?pweb123.com$
- # 把那个子目录指向要绑定的二级域名
- # 这里以子目录blog目录为例
- RewriteCond %{REQUEST_URI} !^/blog/
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteRule ^(.*)$ /<a href="http://www.pweb123.com/cms/" target="_blank" class="infotextkey">cms</a>/$1
- #这里改成要绑定的二级域名和要绑定的子目录
- RewriteCond %{HTTP_HOST} ^(blog.)?pweb123.com$
- RewriteRule ^(/)?$ blog/index.php [L]
以上代码实现:
把子目录blog指向二级域名blog.pweb123.com,比如blog.pweb123com,访问时就直接转到了blog目录。
将以上代码保存为.htaccess文件,然后以ASCII方式上传到根目录(如:public_html目录)。
windows下可以先保存为abc.htaccess,上传到服务器之后再用FTP工具重命名为.htaccess即可。
说明:需要先将二级域名绑定到主机根目录(如:绑定到www.abc.com所在目录),然后才可以使用.htaccess文件的转向功能。