thinkphp5和nginx不得不说的故事
由于之前学习用的都是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不得不说的故事的更多相关文章
- 与《YII框架》不得不说的故事—5篇目录
与<YII框架>不得不说的故事—基础篇 第1章 课程目标 1-1 课程目标 (00:54) 第2章 课前知识准备 2-1 YII的启动和安装 (05:12) 2-2 YII请求处理流程 ( ...
- 【征文】Hadoop十周年特别策划——我与Hadoop不得不说的故事
2016年是Hadoop的十周年生日,在今年,CSDN将以技术和实战为主题与大家共同为Hadoop庆生.其主要内容包含Hadoop专业词典.系列视频技术解析.Hadoop行业实践.线上问答.线下沙龙. ...
- asList和ArrayList不得不说的故事
目录 简介 创建ArrayList UnsupportedOperationException asList 转换 总结 asList和ArrayList不得不说的故事 简介 提到集合类,ArrayL ...
- thinkphp5 + vue nginx配置
thinkphp5 + vue 配置 server { listen ; listen [::]:; # For https listen ssl; listen [::]: ssl; ssl_cer ...
- 微信、QQ和手机号之间不得不说的故事!
发文字,发图片,发心情,视频聊天,查看附近的人,微信能干的事情QQ都可以,那么它们有什么区别,我QQ用得好好的为什么要我联系人都导到微信去?我们很早就有了QQ,但是在QQ时代,我们虽然用QQ发消息聊天 ...
- Visual Studio 20周年,我和VS不得不说的故事(内含福利)
Visual Studio 2017正式版已如期发布(点击这里查看发布全记录)!自去年 11 月正式宣布 Visual Studio 项目之后,微软终于正式推出了“宇宙最强集成开发环境(IDE)”的最 ...
- 【Hadoop 10周年】我与Hadoop不得不说的故事
什么是Hadoop 今年是2016年,是hadoop十岁的生日,穿越时间和空间,跟她说一声生日快乐,二千零八年一月二十八号,是一个特别的日子,hadoop带着第一声啼哭,来到了这个世界, ...
- Visual Studio 20周年,我和VS不得不说的故事
Visual Studio 2017正式版已如期发布(点击这里查看发布全记录)!自去年 11 月正式宣布 Visual Studio 项目之后,微软终于正式推出了“宇宙最强集成开发环境(IDE)”的最 ...
- CSS absolute与relative不得不说的故事
写在开篇: absolute说:“relative,我这辈子都不想看见你!” 为什么呢?它们明明那么相亲相爱,形影不离,这之中到底发生了什么不为人知的故事,竟然让absolute如此讨厌relativ ...
随机推荐
- SpringCloud入门(九): Zuul 上传&回退&异常处理&跨域
Zuul的上传 1.构建一个上传类 import org.springframework.web.bind.annotation.PostMapping; import org.springframe ...
- mysql清空表后id重1开始
通过"truncate table 表名"方式重置清空id,让id从1开始自动递增,
- 1029 Median (25分)
Given an increasing sequence S of N integers, the median is the number at the middle position. For e ...
- mysql服务器内存使用情况总结
活动链接(动态)使用的内存数量如下所示: per_connection_memory = read_buffer_size //memory for sequential table scans +r ...
- 【BIM】BIMFACE中创建疏散效果
背景 在BIM运维中,消防疏散是不可或缺的一环,当发生火警的时候,触发烟感器发生报警,同时启动消防疏散,指导现场工作人员进行疏散,及时准确地显示出疏散路线对争取疏散时间尤为重要.我将介绍如何在bimf ...
- nginx产品环境安全配置-主配置文件
以下配置为产品环境的nginx基于安全和效率的主配置文件,不包含fastcgi相关配置 cat /etc/nginx/nginx.conf user nginx; worker_processes a ...
- 家庭记账本app进度之复选框以及相应滚动条的应用
这次主要是对于android中复选框的相应的操作.以及其中可能应用到的滚动条的相关应用.每一个复选框按钮都要有一个checkBox与之相对应. 推荐使用XML配置,基本语法如下:<CheckBo ...
- django禁用csrf
django禁用csrf 函数试图 from django.views.decorators.csrf import csrf_exempt @csrf_exempt def your_func_vi ...
- 安卓开发学习日记 DAY1
1.eclipse安装,很简单 2.安卓sdk manager 下载安装 sdk manager是一个安卓开发所使用的sdk文件的管理程序,可以使用这个程序在官网上下载相应的安卓的api等.因为需要在 ...
- 谁说.NET不适合搞大数据,机器学习、人工智能
SciSharp Stack SciSharp STACK: https://scisharp.github.io/SciSharp/ 基于.NET的开源生态系统,用于数据科学.机器学习和AI. Sc ...