通过配置.htaccess文件实现子目录绑定二级域名的方法

时间:2022-04-03 10:14:47

使用LINUX共享主机,控制面版是CPANEL的朋友都知道,他默认绑定主域名的根目录为public_html

所以如果想要放域名yourdomain.com能直接访问,势必需要把所有文件全直接放进public_html下。这时候如果你想再建个子站,bbs.yourdomain.com,这时BBS目录就和其他php文件或主站的文件夹混在一起,很不利于管理。

一般LINUX主机都支持.htaccess文件,所以我们可以通过.htaccess文件来实现转向

以下以blog目录和blog.shuxiong.net域名为例讲解一下

复制代码 代码如下:


# 开启功能
RewriteEngine on

# 你要绑定的二级域名
RewriteCond %{HTTP_HOST} ^(blog.)?shuxiong.net$

# 把那个子目录指向要绑定的二级域名
# 这里以子目录blog目录为例
RewriteCond %{REQUEST_URI} !^/blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /cms/$1

#这里改成要绑定的二级域名和要绑定的子目录
RewriteCond %{HTTP_HOST} ^(blog.)?shuxiong.net$
RewriteRule ^(/)?$ blog/index.php [L]


把以上代码保存成.htaccess文件,然后以ASCII方式上传到根目录(如:public_html目录)

WINDOWS不可以重命名为.htaccess的,这时候先命名为abc.htaccess,上传到服务器后,用FTP工具重命名为.htaccess就可以了。

以上.htaccess内容就是把子目录blog指向二级域名blog.shuxiong.net

比如blog.shuxiong.net,访问时就直接转到了blog目录

补充:必须先将二级域名绑定到主机根目录(如:绑定到www.abc.com所在目录)