> lnmp集成环境下部署thinkphp5.0框架的项目,无法正常访问,访问报404页面等。

![](https://box.kancloud.cn/f158d4e4bc8ee400d101bdebad68baac_671x244.png)

首先tp5的访问目录指向到webroot/public文件夹中。thinkphp的url访问:http:// serverName/ index.php(或者其它应用入口文件)/模块/控制器/操作/\[参数名/参数值...\],这个需要支持pathinfo,Apache默认支持,而Nginx不支持。

### **修改站点配置文件**

> 使用 lnmp1.5一键安装包 添加虚拟机主机会自动生成配置文件

> lnmp1.5的站点配置文件一般在 /usr/local/ngnix/conf/vhost/站点.conf

将项目路径指向public目录,设置PATH\_INFO,去掉入口文件,如下

~~~

server

{

listen 80;

#listen [::]:80;

server_name www.thbuyshop.com thbuyshop.com;

index index.html index.htm index.php default.html default.htm default.php;

root /home/wwwroot/www.thbuyshop.com/public;

include rewrite/other.conf;

#error_page 404 /404.html;

# Deny access to PHP files in specific directory

#location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

include enable-php-pathinfo.conf;

#=======================================

# 添加内容部分

#定义变量

set $root /home/wwwroot/www.thbuyshop.com/public;

location ~ [^/]\.php(/|$)

{

try_files $uri =404;

fastcgi_pass unix:/tmp/php-cgi.sock;

fastcgi_index index.php;

#设置PATH_INFO

fastcgi_split_path_info ^((?U).+.php)(/?.+)$;

fastcgi_param PATH_INFO $fastcgi_path_info;

fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

fastcgi_param SCRIPT_FILENAME $root$fastcgi_script_name;

#引入fastcgi配置

include fastcgi.conf;

}

#从URL中去掉index.php入口文件

location /

{

if (!-e $request_filename) {

rewrite ^(.*)$ /index.php?s=/$1 last;

break;

}

}

#添加内容结束

#===================================

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

expires 30d;

}

location ~ .*\.(js|css)?$

{

expires 12h;

}

location ~ /.well-known {

allow all;

}

location ~ /\.

{

deny all;

}

access_log /home/wwwlogs/www.thbuyshop.com.log;

}

~~~

### **修改 fastcgi.conf 中的配置文件**

~~~

# 进入 fastcgi.conf 文件目录

cd /usr/local/nginx/conf

# 修改 fastcgi.conf 配置文件

vim fastcgi.conf

# 开放目录访问权限(因为根目录设置到public下导致框架访问上级目录权限不够)

fastcgi_param PHP_ADMIN_VALUE "open_basedir=/home/wwwroot/:/tmp/:/proc/";

~~~

### **修改 php.ini 中的配置文件**

如果以上设置仍未生效,再进行此操作。

~~~

# 进入 php.ini 文件目录

cd /usr/local/php/etc

# 修改 php.ini 配置文件

vim php.ini

# 修改内容

cgi.fix_pathinfo = 1

~~~

* * *

至此,thinkphp5项目路径访问已经正常,如果网页出现 failed to open stream: No such file or directory in的问题,则可能是项目权限不足。

进入站点根目录 -> 执行:chown -R www:www \* 即可。

lnmp 配置php,LNMP部署 thinkphp项目相关推荐

  1. IDEA配置Docker一键部署SpringBoot项目(企业级做法)

    Docker一键部署SpringBoot项目 前言 一.开启Linux的Docker远程访问 1.1 安装vim工具: 1.2 修改`daemon.json`的配置: 1.3 加入配置: 1.4 重新 ...

  2. JSD-2204-续 配置中心-Nginx-Linux部署java项目-Day19

    1.续 配置中心 上次课我们完成了cart模块的数据库配置信息添加到nacos的操作 我们也删除了cart模块原有的连接数据库信息的配置 下面开始,我们尝试连接nacos配置中心,读取数据库配置信息, ...

  3. docker-compose方式部署php项目

    前言 使用docker-compose工具部署php项目,提高生产效率,同时也减少程序占用硬件资源,现对我之前的博客centos7.x 一键安装lnmp环境(未介绍部署php项目)进行了优化,详见如下 ...

  4. 在Nginx上部署ThinkPHP,解决Pathinfo问题

    在Nginx上部署ThinkPHP,解决Pathinfo问题 其实,要解决nginx不支持pathinfo的问题,有两个解决思路,一是不使用pathinfo模式,二是修改nginx的配置文件,使它支持 ...

  5. php项目私有化部署保护代码,ThinkPHP项目安全配置解决方案

    前言: ThinkPHP MVC框架越来被开发者接受,众多的开发者选择了这个框架,也有很多的优秀项目使用的ThinkPHP框架.最近整理了一下ThinkPHP项目的一些安全配置.可能并不适用全部项目, ...

  6. LNMP介绍及一键部署LNMP架构

    目录 一.LNMP 1.LNMP介绍 ①LNMP工作原理 ②LAMP工作原理 2.LAMP和LNMP的区别 3.编译安装的优点 4.各组件的主要作用 二.脚本一键部署LNMP架构 一.LNMP 1.L ...

  7. node配置ssl证书_在Linux服务器上部署node项目(git部署,forever持续运行,配置SSL证书)...

    一.环境部署 1.下载安装包: wget https://nodejs.org/dist/v9.9.0/node-v9.9.0-linux-x64.tar.xz 2.解压并进入目录: xz -d no ...

  8. 部署前端项目 Linux系统的nginx配置

    为什么80%的码农都做不了架构师?>>>    一.本地文件上传到服务器 scp -r /c/Develop/manage-system/dist/* username@server ...

  9. Centos7云服务器部署SpringBoot项目(手动配置环境篇)

    文章目录 前言 一.部署Tomcat服务器 1.安装JDK1.8 2.安装与启动tomcat 配置安全组(8080端口) 二.安装JDK8 三.Mysql5.7安装 1.下载mysql 2.启动MyS ...

最新文章

  1. [YTU]_2618 ( B 求类中数据成员的最大值-类模板)
  2. NFS服务器是什么?(Network File System 网络文件系统)(远程主机间 mount 挂载目录)(ubuntu:nfs-kernel-server)
  3. 互联网日报 | 6月30日 星期三 | 叮咚买菜正式登陆纽交所;微软发布Win 11首个预览版;三星宣布3nm芯片成功流片...
  4. 解决配置linux环境每次重新连接都需要bash ~/.bashrc的问题
  5. PHP,mysql,Linux,CI框架学习总结
  6. 标准模板库(STL)之配接器(Adapter)
  7. Python破解验证码,只要15分钟就够了!
  8. (转载)AS3中的mouseEnabled与mouseChildren
  9. python抽奖教程_详解用python写一个抽奖程序
  10. Windows.ScreenToClient
  11. 磁盘 RAID0 及其变种详解
  12. 智能时代如何构建金融反欺诈体系?
  13. 手把手教你通过Google Adsense“PIN码验证”
  14. 【YOLOV5-5.x 源码解读】plots.py
  15. 密码学和加密数字货币的简介
  16. 有限覆盖定理证明其他实数完备性定理
  17. 20145212《Java程序程序设计》课程总结
  18. 为何一个简单的测试类H5却要花费我2天时间才完成?
  19. 羊了个羊游戏h5网页版源码
  20. FPGA从入门到精通(4) - MUX

热门文章

  1. 每日学术速递5.13
  2. 计算机未来很火的方向,未来5年,这6个专业很“火热”,毕业不愁没工作
  3. 会计学python能干什么_Python竟然还能用在这些行业?
  4. 【TL8266】APP接收蓝牙模块发送过来的消息
  5. [内网安全]四.内网信息收集--BloodHound工具与PowerShell工具的使用
  6. 硬件大熊原创合集(2022/04更新)
  7. 从Attention到Bert——1 Attention解读
  8. construc游戏之avg
  9. R导入CVS.文件报错Error in data[[rowvar]] : attempt to select less than one element in get1index
  10. 17款最好用的跨浏览器测试工具