本地用MAMP跑的代码,运行没问题。但是部署到CENTOS 6.8 NGINX服务器上的时候,路由地址都404了!

[可以访问] http://something.com/API/public/index.php

[404] http://something.com/API/public/index.php/consult_add

折腾一晚上了。。简直了,自打用了LINUX和PHP,90%的时间都TM在配置环境。FML

OK,还是耐心点请教下吧。 下面是NGINX的配置文件,怎么修改才能让TP的路由正常呢?

网站目录结构,API文件夹里是TP

user www www;

worker_processes auto;

error_log /home/wwwlogs/nginx_error.log crit;

pid /usr/local/nginx/logs/nginx.pid;

#Specifies the value for maximum file descriptors that can be opened by this process.

worker_rlimit_nofile 51200;

events

{

use epoll;

worker_connections 51200;

multi_accept on;

}

http

{

include mime.types;

default_type application/octet-stream;

server_names_hash_bucket_size 128;

client_header_buffer_size 32k;

large_client_header_buffers 4 32k;

client_max_body_size 50m;

sendfile on;

tcp_nopush on;

keepalive_timeout 60;

tcp_nodelay on;

fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read_timeout 300;

fastcgi_buffer_size 64k;

fastcgi_buffers 4 64k;

fastcgi_busy_buffers_size 128k;

fastcgi_temp_file_write_size 256k;

gzip on;

gzip_min_length 1k;

gzip_buffers 4 16k;

gzip_http_version 1.1;

gzip_comp_level 2;

gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;

gzip_vary on;

gzip_proxied expired no-cache no-store private auth;

gzip_disable "MSIE [1-6]\.";

#limit_conn_zone $binary_remote_addr zone=perip:10m;

##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.

server_tokens off;

access_log off;

server

{

listen 80 default_server;

#listen [::]:80 default_server ipv6only=on;

server_name www.mydomain.com;

index index.html index.htm index.php;

root /web;

#error_page 404 /404.html;

include enable-php.conf;

location /nginx_status

{

stub_status on;

access_log off;

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

expires 30d;

}

location ~ .*\.(js|css)?$

{

expires 12h;

}

location ~ /\.

{

deny all;

}

location / {

if (!-e $request_filename) {

rewrite ^(.*)$ /index.php?s=$1 last;

break;

}

}

location /API/ {

if (!-e $request_filename){

rewrite ^/API/(.*)$ /API/index.php?s=$1 last;

}

}

access_log /home/wwwlogs/access.log;

}

include vhost/*.conf;

}

这个配置文件是之前一键安装LNMP时候生成的,看着有点复杂,我试着把它替换成下面的简单一点的。

server {

listen 80;

server_name something.com;

root /web;

charset utf-8;

location / {

index index.html index.php;

}

location /API/ {

if (!-e $request_filename){

rewrite ^/API/(.*)$ /API/index.php?s=$1 last;

}

}

location ~ \.php$ {

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

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

try_files $uri $uri/ /index.php$is_args$args;

include fastcgi_params;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

}

}

哎。。。。没脾气了

php header 404 nginx,ThinkPHP在nginx下怎么设置?路由统统404,疯了~相关推荐

  1. 双网卡同网段静态路由_WINDOWS系统下双网卡设置路由 本文主要涉及到静态路由...

    WINDOWS系统下双网卡设置路由 本文主要涉及到静态路由. 二.WINDOWS系统下设置路由 在WINDOWS下手动设置路由主要在DOS系统中命令符下(在运行输入 栏中键入COMMAND或者CMD即 ...

  2. thinkphp在nginx下pathinfo支持

    thinkphp在nginx下pathinfo支持 在apache下运行正常,但是在nginx下内页都是404空白. 解决办法: 首先:修改nginx的rewrite location / {if ( ...

  3. nginx+thinkphp下解决不支持pathinfo模式以及存在的各种404,500问题

    nginx+thinkphp下解决不支持pathinfo模式以及存在的各种404,500问题 参考文章: (1)nginx+thinkphp下解决不支持pathinfo模式以及存在的各种404,500 ...

  4. 服务器进tp5项目报nginx404错误,TP5框架在nginx环境下路由报404错误解决方法 亲测可用...

    前段时间给客户写了个TP5框架的后台,主要是API调用,上传到客户服务器后发现首页可用,但所有内页报404错误,网上一搜发现天多一样的问题,但找了很多都是不可用的,而且都是过时的,但最终还是自己试出来 ...

  5. nginx设置自己的404模板页面

    1.使用nginx时,如果找到某个页面就会出现默认的404页面,如果要使用自己设置的html或php文件作为404页面,需要对nginx的配置文件做一些设置 在http {}中添加,fastcgi_i ...

  6. macos nginx php mysql_mac环境下搭建nginx + php + mysql开发环境

    1.安装homebrew(mac下好用的包管理器) 第一步,获取install文件 把官网给的脚本拿下来 curl -fsSL https://raw.githubusercontent.com/Ho ...

  7. Nginx+ThinkPHP不支持PathInfo的解决办法

    nginx 不支持pathinfo, 你可以自己配置一个pathinfo变量, 会有安全漏洞,你又要修复, 很麻烦. nginx 最好是不要用pathinfo, thinkphp可以在不支持pathi ...

  8. 解决thinkphp在nginx环境中由于PATH_INFO变量引起的路径问题

    最近一个项目使用了thinkphp3.2作为开发框架,路由方面开启了PATHINFO模式,但是nginx默认是不支持PATHINFO的,表现为$_SERVER['PATH_INFO']没有值 在apa ...

  9. fedora nginx php,在fedora16下安裝nginx + php-fpm

    在fedora16下安裝nginx + php-fpm 1.安装Nginx 直接运行如下命令: yum install nginx 然后我们创建系统启动nginx的链接,并启动它: systemctl ...

最新文章

  1. Django中的常用命令
  2. 高德地图区域线显示_护航国庆假期,助力重点区域精细化管理——扬州交警与高德地图联合推出“全境智能”系统...
  3. 【机器学习基础】超全汇总!机器学习常用术语词汇表(建议收藏)
  4. IP通信基础 4月1日
  5. 联想 android 5.1 root权限,联想a520一键root权限获取教程(图文)
  6. JDBC数据库编程:callableStatement接口
  7. Integer转BigDecimal
  8. 九大背包问题专题--分组背包问题
  9. 力扣-面试题 10.05 稀疏数组搜索
  10. ThinkPHP中create()方法自动验证表单信息
  11. exfat默认配置大小_如何分配U盘exFAT格式单元大小保证速度和空间呢
  12. Linux制作U盘Windows启动盘,windows下制作linux U盘启动盘或者安装优盘(转)
  13. 池化层(pooling layer) 感受野(Receptive Field) 神经网络的基本组成
  14. 一级计算机ppt切换效果怎么做,PPT翻页效果、倒计时怎么做?一分钟变电脑大神...
  15. 在firefox中 屏蔽CSDN博客广告 + 添加百度搜索引擎
  16. 夏普液晶电视红灯闪,不开机解决方法(最后一般都会故障进厂维修)
  17. 如何生成和使用CLIPS动态链接库
  18. 一、fopen与fclose
  19. java odbc excel_利用odbc连接excel,解决中文乱码问题。
  20. 路由追踪程序traceroute/tracert分析与科普

热门文章

  1. Storm精华问答 | task与executor有什么关系?
  2. mi6 android版本,小米6:我依旧是王,MIUI10.4.2稳定版与AndroidP同时到来
  3. linux怎么修改目录的所有者,linux修改文件或目录的所有者(chown)和用户组
  4. key redis 遍历_快乐运维Redis大数据量查询与清理
  5. Android自动化打包工具,利用Jenkins实现Android自动化打包
  6. KAFKA 同步和异步消息的发送(开发实战)
  7. Flowable 数据库表结构 ACT_HI_ATTACHMENT
  8. 服务器漏洞处理_wildfly禁用https和8443端口
  9. 将本地源代码程序推送远程Github仓库
  10. Windows搭建SonarQube_Mysql