猜想:

懵逼

实践:

首先通用的方法,并没有解决问题.

  1. 1.修改php-fpm配置文件
    vim /etc/php-fpm.d/www.conf
    user = nginx        编辑用户为nginx
    group = nginx        修改组为nginx    
  2.  
  3. 2.修改目录权限
    chown nginx.nginx /usr/share/nginx/html/ -R #设置目录所有者
    chmod 700 /usr/share/nginx/html/ -R #设置目录权限

定位:

首先看报错:

  1. 2013/10/22 20:05:49 [error] 12691#0: *6 fastcgi sent in stderr: "primary script unknown" while reading response header from upstream, client: 192.168.168.1, server: localhost, request: "get / http/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.168.133"

  

  1. 打开nginx的配置文件,修改关于fastCGI的配置~
    location ~ \.php$ {
  2. root html;
  3. fastcgi_pass 127.0.0.1:9000;
  4. fastcgi_index index.php;
  5. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  6. include fastcgi_params;
  7. }
    这个就可以解决access denied的问题!
  8.  
  9. 接下来还有一个session的问题,报错是无权限访问session,这个用
    chmod 777  /var/lib/php/session
    命令就能搞定~

  

顺便放一下用typecho的相关错误:

首先是nginx不会默认开启pathinfo模式,这个要设置,根据文档:

 

无法登录后台,出现"405, method not allowed"

这主要是由于nginx的固有bug导致,因为typecho使用的是静态化地址,而nginx 0.7之前的版本是不允许对静态地址做post请求的,所以会出现这个错误。

解决方法

升级nginx至0.7或者0.7以上的版本即可

无法登录后台,点击前台链接或者后台登录时出现"404, not found"

这是nginx的设置时没有注意支持pathinfo导致的,具体关于php pathinfo的信息可以在网上搜索到。

解决方法

一般的出现这种情况时,nginx.conf里的的location设置都是类似这样

  1. location ~ .*\.php$

要支持pathinfo,要改成

  1. location ~ .*\.php(\/.*)*$

然后在location里加上

  1. set $path_info "";
  2. set $real_script_name $fastcgi_script_name;
  3. if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
  4. set $real_script_name $1;
  5. set $path_info $2;
  6. }
  7. fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
  8. fastcgi_param SCRIPT_NAME $real_script_name;
  9. fastcgi_param PATH_INFO $path_info;

在某些老版本的php里面,可能还要打开php.ini里的cgi.fix_pathinfo

  1. cgi.fix_pathinfo = 1
  2.  
  3. 目前,环境+博客就搭好了

nginx服务器上遇到了acces denied,报错是fastCGI只要好好修改配置就行了的更多相关文章

  1. 解决Nginx出现403 forbidden (13: Permission denied)报错的四种方法

    我是在在本地用虚拟机中通过yum安装nginx的,安装一切正常,但是访问时报403, 于是查看nginx日志,路径为/var/log/nginx/error.log.打开日志发现报错Permissio ...

  2. 【FastDFS】小伙伴们说在CentOS 8服务器上搭建FastDFS环境总报错?

    写在前面 在[冰河技术]微信公众号的[分布式存储]专题中,我们分别搭建了单节点FastDFS环境和高可用FastDFS集群环境.但是,之前的环境都是基于CentOS 6.8服务器进行搭建的.很多小伙伴 ...

  3. Nginx出现403 forbidden (13: Permission denied)报错的四种原因

    一.由于php-fpm启动用户和nginx工作用户不一致所致 php-fpm启动用户配置位置 nginx工作用户配置位置 二.不存在在文件,可能是文件路径有误,可以查看nginx错误日志来判断 三.缺 ...

  4. 在邮箱服务器上执行Powershell命令Get-MessageTrackingLog 报错

    开启对应的服务即可. 中文环境: 英文环境:

  5. 关于 ThinkPHP 在 Nginx 服务器上 使用U方法跳转问题

    这个问题已多次遇到,关于tp 框架 使用U 方法跳转, 在Nginx 服务器上可能会遇到路由跳转不过去前面带点(如:./xx) 解决这个问题,可以在tp的入口文件 index.php 里定义个常量 d ...

  6. 在Nginx服务器上屏蔽IP

    采集和防止采集是一个经久不息的话题,一方面都想搞别人的东西,另一方面不想自己的东西被别人搞走. 本文介绍如何利用nginx屏蔽ip来实现防止采集,当然也可以通过iptable来实现. 1.查找要屏蔽的 ...

  7. 由登录服务器时ulimit配置报错,也谈下ulimit配置

    最近在登录开发机时,有报错如下: -bash: cannot modify limit: Operation not permitted 一定是哪个地方有ulimit设置,想想看,用户登录或用户su命 ...

  8. windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决

    windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决 一.发现问题 由于tomcat内存溢出,在wind ...

  9. Git上传代码遇到的报错

    Git上传代码遇到的报错 1.git上传代码卡住(Total 7072 (delta 2508), reused 6844 (delta 2376), pack-reused 0) git confi ...

随机推荐

  1. MVC如何在Pipeline中接管请求的?

    MVC如何在Pipeline中接管请求的? 文章内容 上个章节我们讲到了,可以在HttpModules初始化之前动态添加Route的方式来自定义自己的HttpHandler,最终接管请求的,那MVC是 ...

  2. wcf跨机器访问的问题

    wcf跨机器访问的问题 在wcf跨机器的访问中遇到了各种无法访问的问题,本人也是在通过个人解决问题的基础上发表一下自己的经验,如果还有其他方面可能影响wcf跨机器的问题,还希望大家多多发言! 好了废话 ...

  3. centos 4.4配置使用 and Nutch搜索引擎(第1期)_ Nutch简介及安装

    centos 4.4配置使用 1.Nutch简介 Nutch是一个由Java实现的,开放源代码(open-source)的web搜索引擎.主要用于收集网页数据,然后对其进行分析,建立索引,以提供相应的 ...

  4. IOS UI 第十篇: UITABLEVIEW

    uitableView review yesterday’s knowledge :         folding group :   ------------------------------- ...

  5. JAVA 作业:图形界面

    自己动手写的一个小JAVA 程序: 一个学生管理小系统,虽然很挫,但是这我学JAVA的第一步.学了2天JAVA没有白费! import java.awt.*; import java.awt.even ...

  6. 正则表达式测试分析工具Expresso

    正则表达式测试分析工具Expresso 一个正则表达式的小工具--myRegexHelper   把以前做的一个功能抽取出来做成一个小的正则表达式测试工具.没什么特色,有两点功能: 一.方便的测试正则 ...

  7. 【C基础】const用法

    1.const 和 define 异同 同:const 和 define都是修饰常量 异:const修饰的常量只是编译器的一种优化,它是可以通过内存地址修改const修饰的常量:而define修饰的常 ...

  8. BroadcastReceiver基础总结

    BroadcastReceiver基础总结 BroadcastReceiver是Android四大组件之一,主要负责接收系统或其他程序发出的广播,在开发中,通常用做事件驱动的起源,比如开机就要开启一个 ...

  9. C#编写WINNT服务

    C#编写WINNT服务,随便解决安卓开发遇到的5037被众多程序无节操占用的问题 需求分析: 最近重新开始学习安卓开发,好久不用的ADT集成开发环境频繁遇到不能在仿真机和真机上调试的问题,也就是本人另 ...

  10. EasyUI实现异步加载tree(整合Struts2)

    首先jsp页面有一ul用于展现Tree <ul id="mytree"></ul> 加载Tree <script type="text/ja ...