Ubuntu16.10下php7.0-fpm与Nginx配置

2019-02-16 08:42:00   错误异常
  PHP   Nginx  

Problem!!!

装了Ubuntu16.10后开始配LEMP(Linux-Nginx-MySQL-PHP),为什么Nginx是E呢?江湖中传闻已久的Nginx是这样读的:Engine X, So...U can get it!

回归正题,测试一下环境,papapa输入127.0.0.1,走你~ 然后Nginx就调皮了:503 Bad Gateway(无效网关)。 叔叔要查监控了哦!老司机开上Terminal,跑到监控室:cd /var/log/nginx,看小视频:sudo vi error.log ,最赤鸡的情节是这样的:

2016/12/25 22:45:18 [error] 13153#13153: *1 connect() failed (111: Connection refused) while connecting to upstream, client: ::1, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "localhost:8080"

Nginx处理请求是通过fpm 管理fastcgi来实现请求和相应,而Nginx和php-fpm可以通过监听9000端口(default)或者socket来实现。127.0.0.1:9000走网络,通过Nginx的conf文件,把php结尾的都交给9000端口处理,php-fpm(fastcgi的进程管理器)选择并且连接到一个fastcgi子进程,并将环境变量和标准输入发送到fastcgi子进程,然后不断处理请求响应。socket文件不走网络,是套接字

Conflict!!!

好多强迫症的朋友手一抖,papapa从Ubuntu15,升级到16,然后刚刚还跑的好好地程序,突然抛锚了,然后一番折腾,死活找不到锚抛到哪里了。

php7默认的是socket,按照之前Nginx的conf文件,俩字:没毛病,才怪。(说好了在咖啡厅见,你却偏偏跑到了小树林) 老司机要潜水了:

cd /etc/php/7.0/fpm  
sudo vim php-fpm.conf
发现最后:
include=/etc/php/7.0/fpm/pool.d/*.conf
按照上面的线索继续找
cd /etc/php/7.0/fpm/pool.d
ll之后发现只有一个www.conf
sudo vim www.conf
找了一下发现
listen = /run/php/php7.0-fpm.sock
; listen = 127.0.0.1:9000

Resolve!!!

该去Nginx的配置文件搞事情了

  • sudo vim /etc/nginx/sites-available/default
  • 注释fastcgi_pass 127.0.0.1:9000;
  • 换成fastcgi_pass unix:/run/php/php7.0-fpm.sock;

    
    server {
    listen 8080;
    listen [::]:8080;
    server_name localhost;
    
    root /home/moma/vien/learn/php/demo01/;
    index index.html index.htm index.php;
    
    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }
    
    location ~ \.php$ {
        try_files $uri =404;
    
        include fastcgi.conf;
        # fastcgi_pass 127.0.0.1:9000;
        # 换成socket
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        #change by me
        fastcgi_index index.php;
        fastcgi_intercept_errors     on;
        #fastcgi_param SCRIPT_FILENAME /home/gittest/$fastcgi_script_name;
        include     fastcgi_params;
    }
    }


OK

### 重新加载Nginx和php-fpm

- **sudo service nginx reload**
- **sudo service php7.0-fpm reload**

然后127.0.0.1:8080走你~
vien.tech版权所有,允许转载,但转载请注明出处和原文链接: https://viencoding.com/article/49
欢迎小伙伴们在下方评论区留言 ~ O(∩_∩)O
文章对我有帮助, 点此请博主吃包辣条 ~ O(∩_∩)O

猜你喜欢


评论

There are no comments yet.
未登录

登录后即可发表评论

登录或注册

标签

AdSense Anaconda Android API Auth AWS B-tree Bandwagon Blog bower brew bytes Caffe Catalina cloudcone Composer conda CPU crontab CSS Cuda cv2 datetime Digitalocean DNS Docker Docker-Compose export Flask GET Git GitHub Gmail GoDaddy Google GTM hash Homebrew Homestead HTML http HTTPS IDEA image imagemagick imagick imgick import InnoDB ISO8601 iTerm2 Java JPG Keras Laravel Laravel-Admin lazyload Linux list lnmp load logs Lravel Mac Markdown matplotlib md5 mix Mojave mongo MongoDB MySQL Namesilo Nginx npm numpy Nvidia Nvidia-Docker onevps OpenCV Openpose Outline parse PayPal PHP php-fpm PhpStorm PHP扩展 PIL Pillow pip PNG POST Protobuf PyCharm pyenv pymongo Python Python,人工智能,机器学习,VOC,xml Queue Redis requests save selenium SEO Shadowsock Shadowsocks ShadowsocksR simplemde Spring Boot SQLServer ssd SSH SSL证书 SSR str Sublime sudo swap Tensorflow Terminal Terminator Ubuntu urllib UTC v2ray Valet Validation Validator VienBlog virtualenvs VPN VPS Vultr Web Windows WordPress Xcode zip zmq zsh 下载图片 云主机 云服务器 人工智能 优化 优惠码 伪原创 作弊与反作弊 免费ss账号 免费提现 切片 前端 加密 协议 博客 友链 后台运行 命令 图片操作 图片转换 域名 大小写转换 安卓模拟器 定时任务 定时执行 导出导入 延迟加载 懒加载 提现 搜索引擎 搬瓦工 搭梯子 教程 数据库 文件上传 日志 时区 时间戳 服务器 机器学习 梯子 港版支付宝 生活服务 科学上网 系统升级 索引 编辑器 自动付款 英文伪原创 计划任务 语法 远程连接 重定向 错误异常 错误提示 队列 阿里云 香港 香港手机号
亲情非友情链接