溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nginx+php手動編譯的詳細過程

發(fā)布時間:2021-07-02 15:40:41 來源:億速云 閱讀:238 作者:chen 欄目:編程語言

本篇內(nèi)容主要講解“nginx+php手動編譯的詳細過程”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“nginx+php手動編譯的詳細過程”吧!

  • 系統(tǒng) 阿里云 CentOS-8 //注意端口開放,防火墻限制等問題,這些問題自己檢查

  • PHP 版本 7.49

  • nginx 版本 1.18.0

不說廢話,直接上流程,手動編譯不規(guī)定一定要用,但是一定要會。

下載

1、下載Nginx

wget http://nginx.org/download/nginx-1.18.0.tar.gz

2、下載PHP

wget https://www.php.net/distributions/php-7.4.9.tar.gz

安裝Nginx

依賴:

yum install gcc gcc-c++ automake pcre pcre-devel zlip zlib-devel openssl openssl-devel

1、解壓

 tar -zxvf nginx-1.18.0.tar.gz

2、進入目錄

cd ./nginx-1.18.0

3、編譯(默認就好)

./configure

4、安裝

make && make install#注:編譯安裝的過程中如果有報錯,一般都是缺少依賴,缺什么安裝什么就好了

5、把nginx 添加進服務

在/etc/init.d下創(chuàng)建文件nginx

添加可執(zhí)行權(quán)限 chmod a+x /etc/init.d/nginx

vim /etc/init.d/nginx

#!/bin/bash#Startup script for the nginx Web Server#chkconfig: 2345 85 15nginx=/usr/local/nginx/sbin/nginxconf=/usr/local/nginx/conf/nginx.confcase $1 instart)echo -n "Starting Nginx"$nginx -c $confecho " done.";;stop)echo -n "Stopping Nginx"killall -9 nginxecho " done.";;test)$nginx -t -c $confecho "Success.";;reload)echo -n "Reloading Nginx"ps auxww | grep nginx | grep master | awk '{print $2}' | xargs kill -HUPecho " done.";;restart)$nginx -s reloadecho "reload done.";;*)echo "Usage: $0 {start|restart|reload|stop|test|show}";;esac

保存,即可使用命令:

service nginx start
service nginx stop
service nginx restart

//啟動nginx , 通過ip訪問正常:

nginx+php手動編譯的詳細過程

安裝PHP

依賴:

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel

1、解壓

tar -zxvf php-7.4.9.tar.gz

2、進入目錄

cd ./php-7.4.9

3、編譯

./configure --prefix=/usr/local/php --disable-fileinfo --enable-fpm --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-openssl --with-zlib --with-curl --enable-ftp --with-gd --with-xmlrpc --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-gd-native-ttf --enable-mbstring --with-mcrypt=/usr/local/libmcrypt --enable-zip --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql-sock=/var/lib/mysql/mysql.sock --without-pear  --enable-bcmath

4、安裝

make && make install#注:編譯安裝的過程中如果有報錯,一般都是缺少依賴,缺什么安裝什么就好了

5、配置文件

# 復制配置文件
cp ./php-7.4.9/php.ini-development /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
#復制啟動腳本
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
#添加執(zhí)行權(quán)限
chmod +x /etc/init.d/php-fpm

使用命令查看

php -v

php-fpm命令(開啟/重啟/停止):
/etc/init.d/php-fpm start/restart/stop

查看是否安裝完成:

ps -ef|grep php-fpm

Nginx與PHP結(jié)合(快速簡易版,優(yōu)化的配置請自行研究)

配置文件的解釋請看文章

https://zhuanlan.zhihu.com/p/97208252

vim nginx.conf

server {listen       80;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;index  index.html index.htm index.php;}#error_page  404              /404.html;# redirect server error pages to the static page /50x.html#error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {#    proxy_pass   http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000#location ~ \.php$ {root           html;fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;include        fastcgi_params;}

配置PHP 的 /usr/local/php/etc/php-fpm.d/www.conf

env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp
listen.allowed_clients = 127.0.0.1
listen.owner = nobody
listen.group = nobody
listen = 127.0.0.1:9000
#以上配置去掉注釋
保存

重啟fpm 和 nginx

在項目目錄,也就是默認的 nginx 下的 html 目錄,創(chuàng)建.php文件,進行訪問。

到此,相信大家對“nginx+php手動編譯的詳細過程”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI