首页 > 系统相关 >nginx适配thinkphp3.2.3

nginx适配thinkphp3.2.3

时间:2022-11-09 16:13:58浏览次数:80  
标签:index name script 适配 thinkphp3.2 nginx php fastcgi

环境

centos7.9

nginx1.23.2

thinkphp3.2.3

PHP7.4.30

配置

配置nginx

默认位置在/usr/local/nginx/conf/nginx.conf主要配置locationlocation ~ \.php$

server {
    listen       80;
    server_name  localhost;
    #charset koi8-r;
    #access_log  logs/host.access.log  main;
    location / {
        root   /var/www/html;
        index index.php index.html index.htm;
        if (!-e $request_filename){
            rewrite ^(.*)$ /index.php?s=$1 last;
            break;
        }
    }
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root           /var/www/html;
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_pass   127.0.0.1:9000;
        #包含nginx服务器传递给fastcgi程序的参数,php中通过$_SERVER['参数名']可获取
        include   fastcgi.conf;
        set $path_info "";
        set $fastcgi_script_name_new $fastcgi_script_name;
        #判断url是否是pathinfo形式的,如果是则把这个url分割成两部分,index.php入口文件之后的pathinfo部分存入$path_info变量中,剩下的部分和$document_root根目录定位index.php入口文件在文件系统中的绝对路径 .
        if ($fastcgi_script_name ~*   "^(.+\.php)(/.+)$"  ) {
            set $fastcgi_script_name_new $1;
            set $path_info $2;
        }
        #对fastcgi.conf中的SCRIPT_FILENAME和SCRIPT_NAME fastcgi参数进行重写,目的是指定入口文件在文件系统中的绝对路径给script_filename参数,让fastcgi知道index.php文件位置。
        fastcgi_param   SCRIPT_FILENAME   $document_root$fastcgi_script_name_new;
        fastcgi_param   SCRIPT_NAME   $fastcgi_script_name_new;
        #定义一个新的nginx服务器传递给fastcgi的参数PATH_INFO,thinkphp需要这个入口文件index.php后的pathinfo信息
        fastcgi_param   PATH_INFO $path_info;
    }
}

配置文件参考原文链接:https://www.cnblogs.com/koreyoshi/articles/10259961.html 

配置thinkphp

就是项目里的config.php文件,目录根据自己的项目而定,一般在/var/www/html/项目/Common/Conf添加两行内容

/* URL配置 */
'URL_CASE_INSENSITIVE' => true, // 默认false 表示URL区分大小写 true则表示不区分大小写
'URL_MODEL' => 2, // URL模式

end。

标签:index,name,script,适配,thinkphp3.2,nginx,php,fastcgi
From: https://www.cnblogs.com/xujiecnblogs/p/16873949.html

相关文章

  • Nginx配置文件详解
    Nginx的主配置文件是nginx.conf,这个配置文件一共由三部分组成,分别为全局块、events块和http块。在http块中,又包含http全局块、多个server块。每个server块中,可以包含server......
  • LINUX 安装 NGINX ‘STRUCT CRYPT_DATA’ HAS NO MEMBER NAMED ‘CURRENT_SALT’ 解决
    出现这个问题一般不是Nginx的版本高就是服务器版本高的问题解决办法:在nginx安装文件夹下输入[[email protected]]#vimsrc/os/unix/ngx_user.c进去编辑找到红......
  • 「WGCLOUD 」内网中的agent不能直连访问server,通过nginx给server转发上报数据的配置
    有一种场景,我们的server部署在公网,但我们局域网的主机都不能直连访问server比如只有主机A可以连接访问server,那么就可以在主机A部署nginx然后内网中的主机agent都把请求......
  • awk分析nginx日志
    nginx日志字段说明127.0.0.1--[31/Aug/2018:16:11:16+0800]"GET/50x.htmlHTTP/1.1"200537"-""curl/7.29.0"访问ip、访问时间、请求方式、请求url、响应状态码......
  • linux nginx 配置图片服务器
    location~.*\.(gif|jpg|jpeg|png)${expires24h;root/glxy/imgs;#指定图片存放路径access_log/glxy/imgs/log;#日志proxy_store......
  • linux nginx 配置
    nginx水很深的,学习自己去学,这里不讲解:linux一般在 sbin目录下进行操作: 1.基础命令:查看版本: ./nginx-v重新加载配置文件:./nginx-sreload停止服务:./nginx-sstop......
  • nginx重启报错 nginx: [error] open() “/run/nginx.pid“ failed (2: No such file o
    原文: https://blog.csdn.net/CRMEB/article/details/120779362nginx[error]open()“/usr/local/var/run/nginx.pid”failed(2:Nosuchfileordirectory)nginx:......
  • Windows下nginx的使用
    在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动、停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍。1、启动在nginx安装路径中使用cmd进入到D:\n......
  • Nginx 命令备忘
    安装:brewinstallnginx启动:nginx(默认端口8080,启动后查看http://localhost:8080/)(所以启动了nginx,8080的端口就被占用了)停止:nginx-sstop重启:nginx-sreload查看......
  • 设计模式学习(七):适配器模式
    设计模式学习(七):适配器模式作者:Grey原文地址:博客园:设计模式学习(七):适配器模式CSDN:设计模式学习(七):适配器模式适配器模式适配器模式是一种结构型模式。举例说明,假设有一......