1. 程式人生 > >啟動php沒發現9000埠,nginx配置問題

啟動php沒發現9000埠,nginx配置問題

原本的配置應該是這樣,但是通過netstat -ntpl並沒有發現9000埠

就需要把這段程式碼

 location ~ \.php(.*)$ {
     fastcgi_pass 127.0.0.1:9000;
     fastcgi_index index.php;
     fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     fastcgi_param PATH_INFO $1;   # 把pathinfo部分賦給PATH_INFO變數
     #fastcgi_param PATH_INFO $fastcgi_path_info;
     #fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
     include fastcgi_params;
 }

改為:

 location ~ \.php(.*)$ {
     fastcgi_pass unix:/tmp/php-cgi.sock;
     fastcgi_index index.php;
     fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     fastcgi_param PATH_INFO $1;   # 把pathinfo部分賦給PATH_INFO變數
     #fastcgi_param PATH_INFO $fastcgi_path_info;
     #fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
     include fastcgi_params;
 }

備註:

fastcgi_pass 的地址可以通過搜尋命令查找出php-fpm.conf的配置檔案

[[email protected] conf.d]# find / -name php-fpm*
/usr/bin/php-fpm
/usr/local/php/etc/php-fpm.d
/usr/local/php/etc/php-fpm.conf
/usr/local/php/etc/php-fpm.conf.default
/usr/local/php/var/log/php-fpm.log
/usr/local/php/var/run/php-fpm.pid
/usr/local/php/sbin/php-fpm
/usr/local/php/php/man/man8/php-fpm.8
/root/lnmp1.5/conf/php-fpm5.2.conf

開啟  /root/lnmp1.5/conf/php-fpm5.2.conf  查詢裡面的listen_address

<value name="listen_address">/tmp/php-cgi.sock</value>

就可在fastcgi_pass裡填寫

fastcgi_pass unix:/tmp/php-cgi.sock;

貼出一個完成https+wss配置檔案

upstream websocket {

server 47.105.63.100:9551;
}
#http rewrite https
server {
    listen       80;
    server_name    test.boxinid.com;
    rewrite ^(.*) https://$host$1 permanent;
}
server {

    listen 443;
    server_name test.boxinid.com;
    ssl on;
    root /web/hangkong;
    index index.html index.php;
    ssl_certificate   /cert/214861232200501.pem;
    ssl_certificate_key  /cert/214861232200501.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;


    charset         utf-8;
    access_log      /var/log/nginx/host.access.log  main;
    error_log       /var/log/nginx/error.log;

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9001


# 訪問:wss://xxxx.com/wss
location /wss {
    proxy_pass http://websocket;#代理到上面的地址去
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
}

    location ~ /file/ {
        return 888;
 }


 location ~ \.php(.*)$ {
 fastcgi_pass unix:/tmp/php-cgi.sock;
 fastcgi_index index.php;
 fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 fastcgi_param PATH_INFO $1;   # 把pathinfo部分賦給PATH_INFO變數
 #fastcgi_param PATH_INFO $fastcgi_path_info;
 #fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
 include fastcgi_params;
 }
#去掉index.php
location / {     if (!-e $request_filename){          rewrite ^/(.*)$ /index.php/$1 last;     }}


    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    location ~ /\.ht {
        deny  all;
    }
}