thinkphp3.2部署nginx

简介: 新服务器配置的是nginx服务器。最近陆续的将之前apache服务器上的项目迁移到nginx上。

QQ图片20220425231818.jpg

新服务器配置的是nginx服务器。


最近陆续的将之前apache服务器上的项目迁移到nginx上。


之前一些项目使用thinkphp3.2写的,在对项目进行迁移的时候有一些问题,记录一下。


关于thinkphp,没什么多说的,详情访问thinkphp.cn

 

Thinkphp3.2和thinkphp5是一样的,都是不支持nginx服务器的(我所谓的不支持是需要修改配置)


Thinkphp5部署nginx服务器请参考我另一篇文章《thinkphp5部署nginx


开始正题:


第一步:


修改TP3.2的配置文件支持pathinfo模式


'URL_MODEL' => 2,

 

第二步:


找到php.ini(/usr/local/php/etc/php.ini)查看是否开启


cgi.fix_pathinfo 配置项,默认为0,修改为1,开启 pathinfo 选项。

 

第三步:


进行nginx重写(添加下面这写代码)


location ~ .php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
    location /
    {
            #如果是二级目录就用 rewrite ^/文件夹名称/(.*)$ /index.php?s=/$1 last;)
      if (!-e $request_filename)
      {
        rewrite ^(.*)$ /index.php?s=/$1 last;
        break;
      }
    }


文章最后,会展示网站域名配置文件。

 

第四步:(这一步可以省略,我没配置这个也好用了)


修改:nginx的配置文件 (/usr/local/nginx/conf/vhost/*.conf)


#include enable-php.conf; # 注释这一行
include enable-php-pathinfo.conf; # 加入这行

 

第五步:最重要


重启nginx服务器


重启php-fpm服务

 

我的thinkphp3.2项目的域名配置文件:


server {
        listen       80;
        server_name  xxxxx.guanchao.site ;    #填写你的域名
        index index.html index.htm index.php; #默认打开页面
        root   "xxxxxxxxxxxxxxxxx";       #站点根目录
        location ~ .php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
    location /
    {
            #如果是二级目录就用 rewrite ^/文件夹名称/(.*)$ /index.php?s=/$1 last;)
      if (!-e $request_filename)
      {
        rewrite ^(.*)$ /index.php?s=/$1 last;
        break;
      }
    }
}

 



目录
相关文章
|
2月前
|
弹性计算 运维 监控
快速部署 Nginx 社区版
Nginx是一个高性能的HTTP和反向代理服务器。Nginx在计算巢上提供了社区版服务,您无需自行配置云主机,即可在计算巢上快速部署Nginx服务、实现运维监控,从而方便地基于Nginx搭建您自己的应用。本文介绍使用如何通过计算巢快速部署Nginx社区版。
快速部署 Nginx 社区版
|
1月前
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站
|
1月前
|
JavaScript 应用服务中间件 nginx
nginx部署vue项目
本文介绍了将Vue项目部署到Nginx的步骤,包括构建Vue项目、上传dist文件夹到服务器、安装Nginx、配置Nginx代理静态文件以及重启Nginx,确保了Vue应用可以通过域名或IP地址访问。
98 1
|
1月前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
233 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
1月前
|
Kubernetes 应用服务中间件 nginx
k8s基础使用--使用k8s部署nginx服务
本文介绍了Kubernetes中核心概念Deployment、Pod与Service的基本原理及应用。Pod作为最小调度单元,用于管理容器及其共享资源;Deployment则负责控制Pod副本数量,确保其符合预期状态;Service通过标签选择器实现Pod服务的负载均衡与暴露。此外,还提供了具体操作步骤,如通过`kubectl`命令创建Deployment和Service,以及如何验证其功能。实验环境包括一台master节点和两台worker节点,均已部署k8s-1.27。
151 1
|
2月前
|
应用服务中间件 nginx Docker
docker应用部署---nginx部署的配置
这篇文章介绍了如何使用Docker部署Nginx服务器,包括搜索和拉取Nginx镜像、创建容器并设置端口映射和目录映射,以及如何创建一个测试页面并使用外部机器访问Nginx服务器。
|
2月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
1月前
|
监控 应用服务中间件 网络安全
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
105 0
|
2月前
|
负载均衡 网络协议 应用服务中间件
web群集--rocky9.2源码部署nginx1.24的详细过程
Nginx 是一款由 Igor Sysoev 开发的开源高性能 HTTP 服务器和反向代理服务器,自 2004 年发布以来,以其高效、稳定和灵活的特点迅速成为许多网站和应用的首选。本文详细介绍了 Nginx 的核心概念、工作原理及常见使用场景,涵盖高并发处理、反向代理、负载均衡、低内存占用等特点,并提供了安装配置教程,适合开发者参考学习。
|
3月前
|
Java 应用服务中间件 nginx
【Azure Spring Apps】Spring App部署上云遇见 502 Bad Gateway nginx
【Azure Spring Apps】Spring App部署上云遇见 502 Bad Gateway nginx