位置: 编程技术 - 正文

Nginx下ThinkPHP5的配置方法详解(nginx配置tp5)

编辑:rootadmin

推荐整理分享Nginx下ThinkPHP5的配置方法详解(nginx配置tp5),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nginx tp5,nginx使用php,thinkphp5 nginx配置,nginx thinkphp,nginx配置tp5,nginx配置tp5,thinkphp5 nginx配置,thinkphp5 nginx配置,内容如对您有帮助,希望把文章链接给更多的朋友!

本文主要给大家介绍了关于Nginx下ThinkPHP5的配置方法,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍:

url里public目录的隐藏

出于安全的考虑,TP5的入口文件改成放在public下了,因为这样的话能防止被恶意用户访问到“/thinkphp/”、“/vendor/”等等这些目录下的文件。所以当你以之前的习惯将网站documentroot配置为项目根目录的时候就会需要在url后面加上/public/来访问。当然可能也会有童鞋把入口文件放回到根目录下,然后还是以之前3.x版那样的形式访问了。

但是很显然,这么做并不是那么的科学。

假设项目目录为“/web/wwwroot/augsky.com”,那么我们在网站的nginx配置文件里面将root配置为:

但是一定要记得将open_basedir设置为上一级项目的根目录下,不然应用会没有权限调用除public目录下的其他文件,网站会报无法访问。(open_basedir的配置默认在php.ini里面,但如果是多个虚拟机环境的话有可能会在各个网站的user.ini文件里,这个要根据自己的实际情况来。)具体配置如下:

隐藏入口文件index.php:

说一下try_files:

try_files支持多个参数,每个参数代表一个文件,系统将按顺序检查这些文件是否存在,存在就直接执行,斜线“/”结尾代表目录,若都不存在,则会重定向到最后一个参数指向的文件或者返回指定的http状态码。

pathinfo配置

Nginx下ThinkPHP5的配置方法详解(nginx配置tp5)

在配置文件里面增加这一段(如果你是lnmp一键包用户,请略过这一段往下翻):

上面需要说明的是fastcgi_pass的设置,这个得根据你实际的php版本和安装目录来设定。

好,做完这些之后,保存,重启nginx和php就能生效了。如果你是lnmp一键包用户的话不用上面这样设置,往下面看:

lnmp一键包pathinfo的设置

其实lnmp一键包里面的pathinfo军哥已经都写好了,我们只需要把include enable-php.conf;修改成include enable-php-pathinfo.conf;然后重启lnmp就搞定了。

就是这样简单。下面顺便附上在url里隐藏模块的方法

url隐藏默认模块index

很简单,在入口文件里面定义常量BIND_MODULE为你使用的模块就好了,以默认的index为例:

这样,在url里面不会在有模块名这一级目录了。要知道,层级少一些的url对SEO是有好处的。

下面是nginx里面location的匹配规则

Nginx location的匹配规则

~ 波浪线表示执行一个正则匹配,区分大小写 ~* 表示执行一个正则匹配,不区分大小写 ^~ ^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录 = 进行普通字符精确匹配 @ #"@" 定义一个命名的 location,使用在内部定向时,例如 error_page, try_files

location 匹配优先级

= 精确匹配会第一个被处理。如果发现精确匹配,nginx停止搜索其他匹配。 普通字符匹配,正则表达式规则和长的块规则将被优先和查询匹配,也就是说如果该项匹配还需去看有没有正则表达式匹配和更长的匹配。 ^~ 则只匹配该规则,nginx停止搜索其他匹配,否则nginx会继续处理其他location指令。 最后匹配理带有"~"和"~*"的指令,如果找到相应的匹配,则nginx停止搜索其他匹配;当没有正则表达式或者没有正则表达式被匹配的情况下,那么匹配程度最高的逐字匹配指令会被使用。

总结

标签: nginx配置tp5

本文链接地址:https://www.jiuchutong.com/biancheng/291036.html 转载请保留说明!

上一篇:Laravel 的数据库迁移的方法(laravel sqlserver)

下一篇:TP3.2批量上传文件或图片 同名冲突问题的解决方法(php批量上传)

  • 企业的免税收入用于支出所形成的费用
  • 开专票需要交城建税吗
  • 境外所得抵免限额小于实际缴纳
  • 工会经费能零申报,可以计提工会经费吗
  • 差额征税所得税怎么申报
  • 出口退税企业退税时间
  • 存货计提减值准备是什么原则
  • 消费税在流通环节征税吗
  • 车间员工的质量管理制度
  • 外购的自用小轿车
  • 地税服务业发票税率多少
  • 母子公司合并报表什么时候做
  • 商贸企业固定资产计提折旧吗
  • 买方投资公司
  • 税务非正常户罚款多少
  • 怎么查询个体还是公司
  • 计提当月电费账务处理
  • 施工图审查费入哪个科目
  • 抵债资产会计核算
  • 应付债券借贷
  • 收到银行退回余款
  • win7旗舰版叫啥
  • php输出姓名
  • 建筑装饰工程公司取名
  • 货物运输增值税管理
  • 虚拟机是什么意思
  • php rtrim
  • 建设工程劳务分包合同属于建设工程合同吗
  • yii框架教程
  • 办公室装修费怎么入账
  • 在高地陶恩山脉的滑雪旅行,奥地利巴德加斯坦 (© RooM the Agency/Alamy)
  • php导入php文件
  • flutter项目怎么运行
  • 医院会计医保怎么做账
  • 用友固定资产模块反结账
  • 进出口额等于进口额加出口额吗
  • 社保工伤退回分录
  • 一般纳税人支付的增值税计入成本吗
  • 单一窗口报关是指什么
  • 税务登记是需要原件还是复印件
  • 配件及修理费
  • 费用多报销了,但已经给了,怎么办
  • 工会经费计入什么项目流量表
  • 开出银行承兑汇票一张,面值30000元,用于抵付
  • 公司办公室买的茶叶怎么入账
  • 蓝字发票作废流程视频
  • 无形资产出售时累计摊销为什么在借方
  • 固定资产更新改造被替换的旧部件残值收入
  • 车辆商业险和交强险不在同一日期
  • 定金帐务处理
  • 平均净资产怎么算公式的
  • 企业利润分配的内容
  • 预计所有者权益增长率
  • 费用报销流程及制度
  • mysql coalesce函数用法
  • win9有吗
  • freebsd 升级
  • 进程lsass.exe
  • ubuntu20 server
  • win8系统怎么更改系统语言
  • window10 .net3.5
  • WIN7系统的镜像文件在哪里
  • cocos2d-x教程
  • django中的setting.py的作用
  • opengl配置vc6.0
  • js动态加载图片
  • ubuntu for android
  • 如何让批处理文件运行不显示
  • python各种函数
  • js复制对象的方法有哪几种
  • jquery操作
  • python的设置
  • java教程csdn
  • netbeans12.0安装教程
  • 国税局事业编制和公务员哪个比较好
  • 广东国税局发票查询系统
  • 混合销售定义是什么意思
  • 资源税的税目,税率依照税目税率表执行
  • 武汉税务局官网查询系统
  • 最近领导故意挑事
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设