
看 V 友提到做动静分离可以提供效率,然后去试了一下,看了很多教程,然而一直出错,偶然发现原来是 PHP 版本不同导致的! WTF!
在 nginx 下, php 版本是 5.4 ,在 Apache 下, php 版本是 5.2 ,而且 PHP 的配置 TM 还不一样
那么问题来了,怎样它俩绑定到同一个 PHP 版本下?
1 fengyqf 2017-04-07 18:26:13 +08:00 via Android 既然动静分离,为什么 Apache 跟 Nginx 都处理 PHP 请求?好奇你的动静是按什么条件分离的。 |
2 imyip 2017-04-07 18:30:46 +08:00 via iPhone 动静分离难道不是,静态请求交给 nginx 处理,动态请求交给 apache 么,所以应该是 apache 处理 php 吧 |
3 ivmm 2017-04-07 18:56:23 +08:00 Nginx 80/443 反代 Apache Httpd 8088 , Httpd 用 mod_PHP 处理 PHP 或者 fastcgi 加载 PHP-FPM |
4 love4taylor PRO 难道不是非 PHP 文件直接由 Nginx 处理 PHP 文件反代给 Apache ? |
5 param 2017-04-07 20:15:13 +08:00 via Android 不是很懂。。 Apache 和 Nginx 分别处理静态文件和 PHP 的好处是什么。。 |
7 Yourdaye OP @ivmm 兄弟能不能说详细点? 我的 nginx 里面是这样配置的,用的 8080 端口 location ~ \.(php)?$ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8080; } 怎样才能做到你说的那样呢?多谢了! |
8 Yourdaye OP @ivmm 目前的 nginx 是这样配置的: location ~ .*\.(php|php5)?$ { #fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi.conf; } |
9 Yourdaye OP @ivmm 是不是直接把 fastcgi_pass 127.0.0.1:9000; 改为: fastcgi_pass http://127.0.0.1:8080; |
12 ivmm 2017-04-09 17:11:03 +08:00 |