没有所谓的捷径
一切都是时间最平凡的累积

利用rewrite重写解决thinkphp框架程序入口在Public目录的访问

本文最后更新于2019年1月18日,已超过244天没有更新,如果文章内容失效,请反馈给本站,谢谢!

目前市面上很流行使用thinkphp框架,有些程序开发的时候没有调整对应的程序入口,网站访问时默认指向到Public目录,但很多虚拟主机服务商的主目录都是固定无法修改的,造成程序无法正常运行,本文就是介绍如何利用rewrite重写规则来让程序正常运行。

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文件,然后上传到网站根目录,如果原本存在,复制
<rewrite>
</rewrite>
之间的代码(包括<rewrite></rewrite>本身),添加到<system.webServer>之后。

其他程序解决方法类似,修改正确目录。

» 本文链接地址:https://blog.mydns.vip/1339.html
» 如果喜欢可以: 点此订阅本站
赞(5) 打赏
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除,联系邮箱:contact@mydns.vip。文章观点不代表本站立场。本站原创内容未经允许不得转载,或转载时需注明出处:豫章小站 » 利用rewrite重写解决thinkphp框架程序入口在Public目录的访问
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

智慧源于勤奋,伟大出自平凡

没有所谓的捷径,一切都是时间最平凡的累积,今天所做的努力都是在为明天积蓄力量

联系我们赞助我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏