虚拟主机不支持目录绑定域名的解决方法

广告
如需前端切图、网站仿制、模板修改、二次开发等服务,可联系站长QQ:1801233226

我们知道一般虚拟主机是不支持绑定到子目录的,这时候该怎么办呢。

我们可以利用伪静态实现将域名或二级域名绑定到子目录,

如果是Apache环境,在站点根目录新建一个文件命名为:.htaccess

下面是 123.d163.net域名绑定到子目录dh

RewriteEngine On
RewriteBase /
  
# 绑定123.d163.net 到子目录dh

RewriteCond %{HTTP_HOST} ^123\.d163\.net$ [NC]
RewriteCond %{REQUEST_URI} !^/dh/
RewriteRule ^(.*)$ dh/$1?Rewrite [L,QSA]

#可以绑定多个 只需重复上三行代码并更改一下域名、目录名 就好了 

如果是windows服务器,在站点根目录新建web.config文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Imported Rule 1" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php?s={R:1}" appendQueryString="true" />
                </rule>
                <rule name="Imported Rule 2" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{HTTP_HOST}" pattern="^123\.d163\.net$" />
                        <add input="{URL}" pattern="^/dh/" ignoreCase="false" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="dh/{R:1}?Rewrite" appendQueryString="true" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

完成以上步骤就可以实现访问123.d163.net而直接访问子目录dh了(子目录dh中有index.html或index.php)


最后更新于 2020-06-11 23:39:23

站长提示

如果你的问题还没有解决,可以点击页面右侧的“ ”加入本站技术交流群,和小伙伴们一起讨论问题。
如果你想请站长喝咖啡,可以点击下方打赏扫码,感谢老铁支持。

文章标签:

文章标题:虚拟主机不支持目录绑定域名的解决方法

版权声明:本文为转载文章,原始地址:http://www.d163.net/webknow/48.html

发表评论:(需登录后操作)

评论记录:

未查询到任何数据!