nginx 的介绍我就不罗嗦了,先说下系统的安装环境。
0. 安装环境
系统:Ubuntu 14.04
PHP 版本:5.5.9
已有服务器软件:Apache (基本不影响,后文会提到)
1.安装 Nginx
sudo apt-get install nginx如果你安装了 Apache ,并且此时 Apache 在运行,那么请先修改一下配置文件(没有的同学直接跳过):
#打开配置文件sudo vim /etc/nginx/sites-available/default
然后按以下两处修改(为了不和 Apache 冲突):
server { #修改这里 我将 80 改为 88 listen 88 default_server; #还有这里 同样改为你想要的监听端口 listen [::]:88 default_server ipv6only=on; .....
此时,我们测试 nginx 是否安装成功,没做上述修改的直接在浏览器输入 localhost, 改了的记得加上端口,我的是 localhost:88, 如果出现下面界面则安装成功:
2.安装 php5-fpm
同样使用 apt-get:
sudo apt-get install php5-fpm
同样打开配置文件:
#打开配置文件sudo vim /etc/nginx/sites-available/default首先,在 index 后添加 index.php:
server { listen 88 default_server; listen [::]:88 default_server ipv6only=on; root /usr/share/nginx/html; #修改这里,在 index 后添加 index.php index index.php index.html index.htm; # Make site accessible from http://localhost/ server_name localhost; ....然后,可以再去掉如下注释,看清楚是哪里哦:
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { # fastcgi_split_path_info ^(.+\.php)(/.+)$; # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini # # # With php5-cgi alone: # fastcgi_pass 127.0.0.1:9000; # # With php5-fpm: fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; }接着进行重启:
#这一句虽然没必要但可以给你检查配置文件的错误sudo nginx -s reload#重启 php5-fpmsudo /etc/init.d/php5-fpm restart #重启 nginxsudo /etc/init.d/nginx restart4. 测试
#修改权限sudo chmod 777 /usr/share/nginx/html/#新建测试文件vim /usr/share/nginx/html/index.php在文件中输入以下内容就好:
<?phpphpinfo ();?>打开浏览器,再次输入地址,localhost 或 localhost:端口 (我是 localhost:88),看到如下界面则成功:
问题:安装后打开网页时出现 “502 Bad Gateway”
有的同学可能按照网上某些教程安装之后,测试时显示 “502 Bad Gateway”,噢,不要紧张,因为教程是错的而已....
不少教程是比较久之前的,所以在修改配置文件时,会告诉你注释得到这三行:
location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params;}这里的 fastcgi_pass 变量应该是错的,适用于 PHP 5.3 及以下,在 PHP 5.4 之后,php5-fpm 并不是监听 9000 端口,可以看一下它的配置文件:
#php5-fpm 的配置文件sudo vim /etc/php5/fpm/pool.d/www.conf里面有一段如下,注意最后一行的 listen,原版本是 listen = 127.0.0.1:9000, 但最新的版本是下面的:
; The address on which to accept FastCGI requests.; Valid syntaxes are:; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific address on; a specific port;; 'port' - to listen on a TCP socket to all addresses on a; specific port;; '/path/to/unix/socket' - to listen on a unix socket.; Note: This value is mandatory.listen = /var/run/php5-fpm.sock所以,所以 502 了.....
解决方法:
打开 nginx 配置文件:
#打开配置文件sudo vim /etc/nginx/sites-available/default然后把 9000 的那句注释了,换成新的 fast_pass 变量:
location ~ \.php$ { # fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; }应该是可以正常工作的,不信试试?

長URL(通常用關鍵字和跟踪參數都混亂)可以阻止訪問者。 URL縮短腳本提供了解決方案,創建了簡潔的鏈接,非常適合社交媒體和其他平台。 這些腳本對於單個網站很有價值

在Facebook在2012年通過Facebook備受矚目的收購之後,Instagram採用了兩套API供第三方使用。這些是Instagram Graph API和Instagram Basic Display API。作為開發人員建立一個需要信息的應用程序

Laravel使用其直觀的閃存方法簡化了處理臨時會話數據。這非常適合在您的應用程序中顯示簡短的消息,警報或通知。 默認情況下,數據僅針對後續請求: $請求 -

這是有關用Laravel後端構建React應用程序的系列的第二個也是最後一部分。在該系列的第一部分中,我們使用Laravel為基本的產品上市應用程序創建了一個RESTFUL API。在本教程中,我們將成為開發人員

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显著减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

PHP客戶端URL(curl)擴展是開發人員的強大工具,可以與遠程服務器和REST API無縫交互。通過利用Libcurl(備受尊敬的多協議文件傳輸庫),PHP curl促進了有效的執行

您是否想為客戶最緊迫的問題提供實時的即時解決方案? 實時聊天使您可以與客戶進行實時對話,並立即解決他們的問題。它允許您為您的自定義提供更快的服務

2025年的PHP景觀調查調查了當前的PHP發展趨勢。 它探討了框架用法,部署方法和挑戰,旨在為開發人員和企業提供見解。 該調查預計現代PHP Versio的增長


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

記事本++7.3.1
好用且免費的程式碼編輯器

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能