nginx php-fpm怎麼安裝
nginx php-fpm的安裝方法:先下載php原始碼套件並上傳至伺服器;然後釋放安裝套件並進行參數配置;接著執行編譯;最後修改php-fpm.conf即可。
本文操作環境:CentOS 7.2系統、PHP7.0.5版,DELL G3電腦
Linux下安裝php環境並且設定Nginx支援php -fpm模組
以下以CentOS 7.2為例,安裝php的運作環境,先開啟php官網http://php.net/點選導覽列的Downloads進入下載頁面:http:// php.net/downloads.php
這裡下載最新版的php 7.0.5 的源碼包:
# 下載下來之後上傳至伺服器
# 因為php安裝需要編譯,所以伺服器應該保證gcc和g 環境的安裝
先釋放安裝包:
tar -xvzf php-7.0.5.tar.gz cd php-7.0.5
接下來進行參數配置,配置前如果沒有libxml2和libxml2-devel會報錯,所以應該更新libxml2並安裝libxml2-devel ,使用線上安裝:
yum -y install libxml2yum -y install libxml2-devel
補充,因為不同的作業系統環境,系統安裝開發環境套件的完整程度也不相同,所以建議安裝作業系統的時候做必要選擇,也可以統一執行一遍所有的命令,將沒有安裝的元件安裝好,如果已經安裝了可能會進行升級,版本完全一致則不會進行任何操作,命令除上面2個之外,匯總如下:
yum -y install opensslyum -y install openssl-develyum -y install curlyum -y install curl-develyum -y install libjpegyum -y install libjpeg-develyum -y install libpngyum -y install libpng-develyum -y install freetypeyum -y install freetype-develyum -y install pcreyum -y install pcre-develyum -y install libxsltyum -y install libxslt-develyum -y install bzip2yum -y install bzip2-devel
以上這些套件基本上夠用了,如果發現問題再補充,安裝完成之後,執行配置:
./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip
# 實際上這裡的設定項比上述還多,可以使用 ./configure --help 指令查看所有選項,這裡注意在php7中--with-mysql原生支援已經不存在了,操作都變成mysqli或pdo了;以上這些選項在正常的php開發中完全夠用了,後期如果需要,可以選擇手動開啟對應的模組
然後執行編譯:
make
編譯時間可能會有點長,編譯完成之後,執行安裝:
make install
php的預設安裝位置上面已指定為/usr/local/php,接下來設定對應的檔案:
cp php.ini-development /usr/local/php/lib/php.inicp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.confcp sapi/fpm/php-fpm /usr/local/bin
然後設定php.ini,使用: #vim /usr /local/php/lib/php.ini 打開php設定檔找到cgi.fix_pathinfo配置項,這一項預設被註解並且值為1,根據官方文件的說明,這裡為了當檔案不存在時,阻止Nginx將請求傳送到後端的PHP-FPM模組,從而避免惡意腳本注入的攻擊,所以此項目應該去掉註解並設定為0
##
################################### ####### 設定完畢儲存並退出############ 另外注意一個地方就是php.ini設定檔的位置可以在編譯前設定參數中設置,編譯參數可以寫成: --with-config-file-path=/usr/local/php 這樣的話php就回去指定的目錄下讀取php.ini設定文件,如果不加這個參數預設位置就是php安裝目錄下的lib目錄,具體也可以在phpinfo()輸出介面查看,如果php.ini放到其他位置,php讀取不到,那麼所有的設定修改後都是不生效的,這點要注意######
此时首先应该创建web用户:
groupadd www-data useradd -g www-data www-data
然后网上一些教程说让修改php-fpm.conf添加以上创建的用户和组,这时候使用 vim /usr/local/php/etc/php-fpm.conf 打开文件后找不到官方所提示的位置:
如果此时随便在一个位置添加,那么接下来启动php-fpm的时候,会报目录找不到的错误,所以不要在php-fpm.conf中添加用户和组,这个时候翻到php-fpm.conf最后一行会发现如下内容(如果编译时添加--prefix选项以下位置会自动补全,默认是下面是空的,要注意):
这里引入了php-fpm.d目录下所有的conf配置文件,但是NONE需要修改为我们的实际目录:/usr/local
默认情况下etc/php-fpm.d/下有一个名为www.conf.defalut的配置用户的文件,执行下面命令复制一个新文件并且打开:
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf vim /usr/local/php/etc/php-fpm.d/www.conf
默认user和group的设置为nobody,将其改为www-data
修改完成之后,保存并退出,然后执行以下命令启动php-fpm服务:
/usr/local/bin/php-fpm
启动完毕之后,php-fpm服务默认使用9000端口,使用 netstat -tln | grep 9000 可以查看端口使用情况:
9000端口正常使用,说明php-fpm服务启动成功
然后执行 vim /usr/local/nginx/nginx.conf 编辑nginx配置文件,具体路径根据实际的nginx.conf配置文件位置编辑,下面主要修改nginx的server {}配置块中的内容,修改location块,追加index.php让nginx服务器默认支持index.php为首页:
然后配置.php请求被传送到后端的php-fpm模块,默认情况下php配置块是被注释的,此时去掉注释并修改为以下内容:
这里面很多都是默认的,root是配置php程序放置的根目录,主要修改的就是fastcgi_param中的/scripts为$document_root
修改完上面的,回到nginx.conf第一行,默认是#user nobody; 这里要去掉注释改为user www-data;或者user www-data www-data;表示nginx服务器的权限为www-data
修改完这些保存并退出,然后重启nginx:
/usr/local/nginx/nginx -s stop /usr/local/nginx/nginx
接下来编辑一个测试的php程序,在nginx下的html目录下创建test.php文件,打印一下php配置:
<?php phpinfo(); ?>
然后打开浏览器输入对应的地址进行访问,看到输出页面,说明nginx和php都配置成功了:
推荐学习:《PHP视频教程》
以上是nginx php-fpm怎麼安裝的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

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

SublimeText3漢化版
中文版,非常好用

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

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如何在 Windows 中配置 Nginx?安裝 Nginx 並創建虛擬主機配置。修改主配置文件並包含虛擬主機配置。啟動或重新加載 Nginx。測試配置並查看網站。選擇性啟用 SSL 並配置 SSL 證書。選擇性設置防火牆允許 80 和 443 端口流量。

Docker 容器啟動步驟:拉取容器鏡像:運行 "docker pull [鏡像名稱]"。創建容器:使用 "docker create [選項] [鏡像名稱] [命令和參數]"。啟動容器:執行 "docker start [容器名稱或 ID]"。檢查容器狀態:通過 "docker ps" 驗證容器是否正在運行。

可以通過以下步驟查詢 Docker 容器名稱:列出所有容器(docker ps)。篩選容器列表(使用 grep 命令)。獲取容器名稱(位於 "NAMES" 列中)。

確認 Nginx 是否啟動的方法:1. 使用命令行:systemctl status nginx(Linux/Unix)、netstat -ano | findstr 80(Windows);2. 檢查端口 80 是否開放;3. 查看系統日誌中 Nginx 啟動消息;4. 使用第三方工具,如 Nagios、Zabbix、Icinga。

在 Docker 中創建容器: 1. 拉取鏡像: docker pull [鏡像名] 2. 創建容器: docker run [選項] [鏡像名] [命令] 3. 啟動容器: docker start [容器名]

可以查詢 Nginx 版本的方法有:使用 nginx -v 命令;查看 nginx.conf 文件中的 version 指令;打開 Nginx 錯誤頁,查看頁面的標題。

在雲服務器上配置 Nginx 域名的方法:創建 A 記錄,指向雲服務器的公共 IP 地址。在 Nginx 配置文件中添加虛擬主機塊,指定偵聽端口、域名和網站根目錄。重啟 Nginx 以應用更改。訪問域名測試配置。其他注意事項:安裝 SSL 證書啟用 HTTPS、確保防火牆允許 80 端口流量、等待 DNS 解析生效。

當 Nginx 服務器宕機時,可執行以下故障排除步驟:檢查 nginx 進程是否正在運行。查看錯誤日誌以獲取錯誤消息。檢查 nginx 配置語法正確性。確保 nginx 具有訪問文件所需的權限。檢查文件描述符打開限制。確認 nginx 正在偵聽正確的端口。添加防火牆規則以允許nginx流量。檢查反向代理設置,包括後端服務器可用性。如需進一步幫助,請聯繫技術支持。
