nginx 代理php
centos 7.6
nginx 编译安装 ./configure --prefix=/data/apps/nginx \ --user=nginx \ --group=nginx \ --with-http_stub_status_module \ --with-http_ssl_module \ --with-http_gzip_static_module \ --with-stream \ --with-http_v2_module \ --with-http_realip_module \ --with-http_sub_module \ --with-stream_realip_module \ --with-stream_ssl_module \ --with-stream_ssl_preread_module make && make install
yum 安装php-72 yum install epel-release -y yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y yum -y install yum-utils yum-config-manager --enable remi-php72 sudo yum -y install php php-opcache sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel sudo yum -y install php-mbstring sudo yum -y install php-json sudo yum -y install php-xml sudo yum -y install php-fedora-autoloader sudo yum -y install php-sodium sudo yum -y install php sudo yum -y install php-gd sudo yum -y install php-devel sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-gd sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pdo sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pdo php-process sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pecl sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-mysqlnd sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-ldap sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-cli sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pecl-msgpack sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pecl-msgpack php-pecl-redis5 sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pecl-msgpack php-pecl-redis5 php-pear sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pecl-msgpack php-pecl-redis5 php-bcmath sudo yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel php-devel php-pecl-msgpack php-pecl-redis5 php-bcmath php-pecl-zip oniguruma5php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | cat nginx.conf worker_processes auto; user nginx nginx; events { worker_connections 1024 ; } http { include mime.types; default_type application / octet - stream; sendfile on; keepalive_timeout 65 ; server { listen 80 ; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 / 50x .html; location = / 50x .html { root html; } } # 设置访问日志的路径和格式 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"' ; # 访问日志 access_log / var / log / nginx / access.log main; # 错误日志 error_log / var / log / nginx / error.log warn; include vhost / * .conf; } |
cat vhost/www.conf server { listen 80; server_name project1.example.com; root /usr/local/nginx/html/;
index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { include fastcgi_params; fastcgi_pass unix:/var/run/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
编译一个php测试页面
cat /usr/local/nginx/html/info.php <?php phpinfo();
访问:
http://project1.example.com/info.php
问题1:页面提示 文件找不到
查看nginx日志如下提示
2024/07/27 07:50:20 [error] 56623#0: *172 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 117.129.44.196, server: project1.example.com, request: "GET /info.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm.sock:", host: "project1.example.com"
2、通过排除法定位问题
首先: 要保障这俩用户是一致的,selinux和防火墙是关闭的
egrep "user = nginx|group = nginx" /etc/php-fpm.d/www.conf
egrep "user nginx nginx" /data/apps/nginx/conf/nginx.conf
其次:排除目录权限的问题
大家可能都有自己的自定义项目目录。
遇到问题拍错的时候建议先按最小化配置也就是我上面的示例去测试
然后检查项目上一级目录、项目目录是不是都是755
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通