AFFVPS

零散收集的实用教程

Ubuntu nginx与Apache端口冲突php无法解析解决办法

一、变更apache的端口,方法如下

1.修改Apache监听处理动态请求端口

变更文件 /etc/apache2/sites-abailable/default 的端口
<VirtualHost *:8080>
……
</VirtualHost>

2.修改Apache监听端口

变更文件 /etc/apache2/ports.conf 的端口
NameVirtualHost *:8080 Listen 8080

3.重启apache

/etc/init.d/apache2 reload
/etc/init.d/apache2 restart

如果修改后php还是无法解析,可以执行如下操作试试 apt-get install phpmyadmin
然后重启系统
此时可以通过http://localhost:8080进行访问

二、设置nginx反向代理

将php文件的请求路由到由Apache做处理。Nginx 占用 80 端口,过滤静态请求,然后动态请求即 Proxy 到 Apache 的 8080 端口。Proxy 反向代理的好处是访问的时候,始终就是 80端口,来访者不会觉察到有任何的区别。
变更文件/etc/nginx/sites-available/default,在server中添加如下代码

server {
location ~* ^.*\.php$ {
#if (!-f $request_filename) {#return 404;#}proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Host $host;proxy_pass http://127.0.0.1:8080;}
}

修改完成后重启nginx
sudo /etc/init.d/nginx restart

链接:https://www.jianshu.com/p/ae8bf8fa0d20

 

码字很辛苦,转载请注明来自AFFVPS《零散收集的实用教程》