由于之前学习用的都是apsche,所以对ngnix一窍不通,在这里写给正在学习的同行,希望可以帮助到你们:

如果你不会用apache部署tp5的可以查看我之前发布的文章,里面有提到

phpstudy

参考:https://blog.csdn.net/qq_33862644/article/details/78174041

你切换ngnix之后,你只能访问tp5的首页,这时候点击其他事不能访问的到的,会报403错误,是因为你的pathinfo没有设置,这时候就需要伪静态了。

在“打开配置文件”中找到vhsts.conf,打开,然后配置伪静态的代码:

server {
listen ;
server_name www.bicktp.com bicktp.com;
root "E:\wamp\www\bick\public";
location / {
index index.html index.htm index.php;
autoindex on;
#伪静态配置
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$ last;
break;
}
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:;
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;
}
}

我有写注释的,你自己看着写吧。

然后在linux系统上部署也是一样的。

参考:https://www.cnblogs.com/fangziffff123/p/7588782.html

我用最原始的方法自己写不知道为什么运行不了,可能是某些代码缺失了吧,所以我是了第三方工具帮我配置->宝塔面板

那个配置文件基本不用谢,只写伪静态就可以了!!!

你们好,还是我,今天使用了thinkphp5.1,搭建环境是nginx,然后发现现在新版本的tp框架好像不用写伪静态都可以跑了,只是要写多一个index.php才能跑起来,这个让我有点不爽,很不雅观的好不好,万一这样让外人看见了,他们想上我什么办,于是我就去查了一下资料:

来源:

https://xieye.iteye.com/blog/2436835

主要加上try_files 指令就好,不多说,上代码:

server {
listen ;
server_name layton.com;
root "F:/phpstudy_pro/WWW/layton/public";
location / {
try_files $uri /index.php$uri$is_args$args; index index.php index.html /error/index.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
error_page /error/.html;
autoindex off;
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:;
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;
}
}

thinkphp5和nginx不得不说的故事的更多相关文章

  1. 与《YII框架》不得不说的故事—5篇目录

    与<YII框架>不得不说的故事—基础篇 第1章 课程目标 1-1 课程目标 (00:54) 第2章 课前知识准备 2-1 YII的启动和安装 (05:12) 2-2 YII请求处理流程 ( ...

  2. 【征文】Hadoop十周年特别策划——我与Hadoop不得不说的故事

    2016年是Hadoop的十周年生日,在今年,CSDN将以技术和实战为主题与大家共同为Hadoop庆生.其主要内容包含Hadoop专业词典.系列视频技术解析.Hadoop行业实践.线上问答.线下沙龙. ...

  3. asList和ArrayList不得不说的故事

    目录 简介 创建ArrayList UnsupportedOperationException asList 转换 总结 asList和ArrayList不得不说的故事 简介 提到集合类,ArrayL ...

  4. thinkphp5 + vue nginx配置

    thinkphp5 + vue 配置 server { listen ; listen [::]:; # For https listen ssl; listen [::]: ssl; ssl_cer ...

  5. 微信、QQ和手机号之间不得不说的故事!

    发文字,发图片,发心情,视频聊天,查看附近的人,微信能干的事情QQ都可以,那么它们有什么区别,我QQ用得好好的为什么要我联系人都导到微信去?我们很早就有了QQ,但是在QQ时代,我们虽然用QQ发消息聊天 ...

  6. Visual Studio 20周年,我和VS不得不说的故事(内含福利)

    Visual Studio 2017正式版已如期发布(点击这里查看发布全记录)!自去年 11 月正式宣布 Visual Studio 项目之后,微软终于正式推出了“宇宙最强集成开发环境(IDE)”的最 ...

  7. 【Hadoop 10周年】我与Hadoop不得不说的故事

    什么是Hadoop        今年是2016年,是hadoop十岁的生日,穿越时间和空间,跟她说一声生日快乐,二千零八年一月二十八号,是一个特别的日子,hadoop带着第一声啼哭,来到了这个世界, ...

  8. Visual Studio 20周年,我和VS不得不说的故事

    Visual Studio 2017正式版已如期发布(点击这里查看发布全记录)!自去年 11 月正式宣布 Visual Studio 项目之后,微软终于正式推出了“宇宙最强集成开发环境(IDE)”的最 ...

  9. CSS absolute与relative不得不说的故事

    写在开篇: absolute说:“relative,我这辈子都不想看见你!” 为什么呢?它们明明那么相亲相爱,形影不离,这之中到底发生了什么不为人知的故事,竟然让absolute如此讨厌relativ ...

随机推荐

  1. 怎么获取WebAPI项目中图片在服务端的路径

    1.这是我的项目结构. 2.路径格式为:[http://服务器域名/文件夹/文件.扩展名] 测试:假如我要获取到[logo_icon.jpg]这张图.在浏览器的地址栏中输入上面那个格式的路径. 3.可 ...

  2. vue-cli 引入axios及跨域使用

    使用 cnpm 安装 axios cnpm install axios --save-dev 安装其他插件的时候,可以直接在 main.js 中引入并 Vue.use(),但是 axios 并不能 u ...

  3. 封装一个通用的PopupWindow

    上篇文章是关于建造者设计模式的,今天顺便封装一个通用的 PopupWindow 来实践一下, 同时也方便以后使用 PopupWindow,本文将从下面几个方面来介绍 PopupWindow 及其封装, ...

  4. Spring-Cloud-Netflix-Eureka注册中心

    TOC 概述 eureka是Netflix的子模块之一,也是一个核心的模块 eureka里有2个组件: 一个是EurekaServer(一个独立的项目) 这个是用于定位服务以实现中间层服务器的负载平衡 ...

  5. Oracle给权限和同义词

    在同一个DB下,用户A创建了一个Table(student),用户B无法访问.如果B想要访问,就需要A赋予B权限. 登录用户A执行下面语句: GRANT SELECT, INSERT, UPDATE, ...

  6. Java 连接数据库总是报错

    mysql账号密码是正确的,但是一直报账号密码错误. 报错信息: java.sql.SQLException: Access denied for user 'root'@'localhost' (u ...

  7. postman 参数传递

    pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); pm.test(& ...

  8. flask-url参数

    flask-url参数 无约束(string)传参 from flask import Flask app = Flask(__name__) @app.route('/<id>') de ...

  9. 程序员的 Ubuntu 19.10 配置与优化指南

    原文地址:程序员的 Ubuntu 19.10 配置与优化指南 0x00 环境 CPU: Intel Core i9-9900k GPU: GeForce RTX 2070 SUPER RAM: DDR ...

  10. 【python实现卷积神经网络】卷积层Conv2D实现(带stride、padding)

    关于卷积操作是如何进行的就不必多说了,结合代码一步一步来看卷积层是怎么实现的. 代码来源:https://github.com/eriklindernoren/ML-From-Scratch 先看一下 ...