首先tp5的访问目录指向到webroot/public文件夹中。

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

1.php.ini中的配置参数cgi.fix_pathinfo = 1

2.修改nginx.conf文件。

location ~ \.php(.*)$ {

  fastcgi_pass 127.0.0.1:9000;

  fastcgi_index index.php;

  #下面两句是给fastcgi权限,可以支持 ?s=/module/controller/action的url访问模式

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

  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  #下面两句才能真正支持 index.php/index/index/index的pathinfo模式

  fastcgi_param PATH_INFO $fastcgi_path_info;

  fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

include fastcgi_params;

  }

3. 去掉/index.php/
  修改nginx.conf文件

  location / {

    index index.html index.htm index.php;

    autoindex on;

  if (!-e $request_filename) {
    rewrite ^(.*)$ /index.php?s=/$1 last;
    break;
    }
  }

转载地址:http://www.thinkphp.cn/topic/52021.html

thinkphp5在Linux下Nginx配置问题解决的更多相关文章

  1. 【转】Linux下nginx配置https协议访问的方法

    一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...

  2. Linux下Nginx配置阿里云 SSL证书实现HTTPS访问

    这篇文章主要介绍了nginx配置ssl证书实现https访问的示例 1.服务器系统:Centos 2. 阿里云申请SSL证书 选择“免费版DV SSL”,点击立即购买: 下载证书 列表中找到已签发的证 ...

  3. linux下nginx配置ssl证书(https)

    nginx配置ssl很简单,首先需要两个文件,一个是crt文件,另一个是key文件,如下所示: xxx.crt;  #(证书公钥)xxx.key; #(证书私钥) 把这两个文件放到nginx的conf ...

  4. Linux下nginx配置https协议访问

    一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...

  5. Linux下nginx配置https协议访问的方法

    一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...

  6. VMware Linux 下 Nginx 安装配置 - nginx.conf 配置 [负载两个 Tomcat] (三)

    首先启动Nginx 1. 相关浏览 两个 Tomcat 配置:  VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二) Nginx 安装配置启动: VMware Linu ...

  7. VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二)

    准备工作 相关浏览: VMware Linux 下 Nginx 安装配置 (一) 1. 选在 /usr/local/ 下创建 softs 文件夹,通过 ftp 命令 把 apache-tomcat-7 ...

  8. linux下nginx结合keepalived实现主从切换的配置

    linux下nginx结合keepalived实现主从切换的配置   解决方法: 实现一个主nginx宕机,请求转到另一个nginx中. 1.确保两台nginx已启动,假如端口分别是192.168.0 ...

  9. VMware Linux 下 Nginx

    负载   VMware Linux 下 Nginx 安装配置 - nginx.conf 配置 [负载两个 Tomcat] (三) Weiseditor 2014-11-26 23:42 阅读:1 评论 ...

随机推荐

  1. HTML下标签之应用

    <!doctype html><html lang="en"> <head> <meta charset="UTF-8" ...

  2. 1. cocos creator 连接服务端

    客户端向服务端发送 请求: this.network.send("/////",)  上面这段代码要写在logic.js中,(关于服务端的东西全部扔到logic中): ////中写 ...

  3. js复习--基础

    最近工作遇到了一些小困难,基础真的很重要,漫天高楼起于地. 一,script元素 包括type=“text/Javascript”,defer延迟到html加载完解析,src=“../../test. ...

  4. UE4 PostProcessVolume 蓝图操作后期框

    如图找到场景里面的后期框,首先我们要获得它的设置,Settings 大概就是属性的意思.通过Settings设置其它的属性.Set members in PostProcessSetting 就是接口 ...

  5. Ubuntu-18.04.2-几个启动错误解决办法

    问题如图: 这里三个问题: 1. piix4_smbus: SMBus Host controller not enabled.(i2c_piix4模块所致,因为系统找不到这个模块,所以报错) 解决办 ...

  6. 2019OO第二单元作业总结

    OO第二单元的作业主题是模拟电梯. ---------------------------------------------------------------------------------- ...

  7. Python(四) —— 函数

    什么是函数? 把一堆代码放一起就叫函数 函数用来干什么? 不复写代码,提高代码重复利用程度 怎么定义以及调用函数: def fun1(): #定义函数 print('这是一个函数') #函数体,里面什 ...

  8. Spring Boot - AOP(面向切面)-切入点表达式

    切入点指示符用来指示切入点表达式目的,在 Spring AOP 中目前只有执行方法这一个连接点,Spring AOP 支持的 AspectJ 切入点指示符,切入点表达式可以使用 &&. ...

  9. springboot shiro 项目前端页面访问问题总结

    1.springboot前端页面默认需要放到指定的目录下才能访问 在/src/main/resource目录下的: /static /public /resources /META-INF/resou ...

  10. Ignite(二): 架构及工具

    1.集群和部署 Ignite集群基于无共享架构,所有的集群节点都是平等的,独立的,整个集群不存在单点故障. 通过灵活的Discovery SPI组件,Ignite节点可以自动地发现对方,因此只要需要, ...