thinkphp等入口文件在public目录的设置方法

我司的虚拟主机站点都是默认的wwwroot目录,虚拟主机的默认跟目录是无法修改的。

但是thinkphp程序部分程序在开发的时候没有调整对应的程序入口,就需要网站访问默认指向到Public目录。

为了使用网站可以正常访问,可以在网站根目录下添加相应的伪静态规则,将对应的访问直接调整到Public目录


apache下伪静态规则:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(.*)$ /public/$1 [L]
</IfModule>

保存命名为.htaccess(注意有点)

IIS7下伪静态规则:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="public" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                      <add input="{URL}" pattern="^/public/" ignoreCase="false" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="/public/{R:1}" />
                </rule>
            </rules>
         </rewrite>
    </system.webServer>
</configuration>

保存命名为web.config,上传到网站wwwroot目录。


由于涉及到伪静态方面的问题,有些应用配置可能不适用,可以在主机控制面板点击设置首页功能按钮,在里面直接输入public/index.php来指定。

thinkphp等入口文件在public目录的设置方法  第1张


评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram