解决搭建好LNMP环境之后,出现了Access Denied错误
分类:CentOS运维 阅读:18186 次
搭建好LNMP环境之后,出现了Access Denied错误,现已排除掉文件权限的问题也排除掉是Nginx的问题,而是无法解析PHP的问题。
发现网上的很多大牛都是通过Nginx的log来排查错误,但是打开nginx.conf发现其实我的log信息不够详细,于是希望能够配置一下log_format
配置Nginx的 log_format
①打开nginx.conf
②将原来的log_format那一行删掉,用下面这部分替换
log_format main '$remote_addr - $remote_user [$time_local] '
'fwf[$http_x_forwarded_for] tip[$http_true_client_ip] '
'$upstream_addr $upstream_response_time $request_time '
'$geoip_country_code '
'$http_host $request '
'"$status" $body_bytes_sent "$http_referer" '
'"$http_accept_language" "$http_user_agent" '
③保存退出
重启nginx
打开nginx的日志文件,找到error.log,tail -f error.log,发现如下错误
从第一行中可以发现是PHP报错,搜索问题,发现是因为php限定了php仅能运行的目录,现在只能在/tmp/文件夹下运行,所以在nginx的www-root文件夹下运行不了,所以发生了拒绝访问的错误
解决方案:
①打开php.ini文件
②找到open_basedir处
③将该行注释掉,注释掉的意思就是说php可以在任何文件夹下运行,如果希望能够在指定的文件夹下运行,则将open_basedir设定成相应的目录
④保存并退出
重启PHP-FPM service php-fpm restart
然后访问网页,发现解决了问题。
热门推荐
- Linux系统负载LoadAverage详解
- Linux软件开发版本管理工具比较
- sql语句大全 值得收藏
- 《DOTA2》即将登陆Linux
- Linux控制世界的N种方式:从挤牛奶到超级计算机
- Linux操作系统十五年病毒简史
- memcached 双机热备
- 利用http_load测试Web引擎性能
- 简单的网站压力测试工具webbench
- DirectAdmin的Mysql优化
- 一例千万级pv高性能高并发网站架构
- 服务器集群监控系统方案
- CentOS下轻松实现源码打包安装
- 同样磁盘数,不同raid级别的随机IO性能差异对比
- centos下安装wireshark 抓包
- python 采集小程序
- PY IE 自动化点击工具
- web 渗漏流程
- mysql 断号查询
- Cacti+Nagios完全攻略