溫馨提示×

溫馨提示×

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

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

Ubuntu環(huán)境怎么編譯安裝PHP和Nginx

發(fā)布時間:2022-10-22 10:38:16 來源:億速云 閱讀:121 作者:iii 欄目:服務(wù)器

本篇內(nèi)容介紹了“Ubuntu環(huán)境怎么編譯安裝PHP和Nginx”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

編譯安裝nginx

切換目錄到工作文件夾:

cd /usr/local/src

下載pcre源代碼并安裝

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-10.20.tar.gz
tar -zxvf pcre2-10.20.tar.gz
mv ./pcre2-10.20.tar.gz ./pcre 
cd pcre
./configure --prefix=/usr/local/pcre
make && make install

下載zlib源代碼并安裝

wget http://tenet.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
mv ./zlib-1.2.8.tar.gz ./zlib
cd zlib
./configure --prefix=/usr/local/zlib
make && make install

下載nginx源代碼并安裝

wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf nginx-1.8.1.tar.gz
cd nginx-1.8.1
./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre --with-zlib=/usr/local/zlib
make && make install

開機啟動nginx

添加/ect/init.d/nginx,并寫入腳本

#! /bin/bash
# description: startup script for webserver on centos. cp it in /etc/init.d and
# chkconfig --add nginx && chkconfig nginx on
# then you can use server command control nginx
#
# chkconfig: 2345 08 99
# description: starts, stops nginx
set -e
path=$path:/usr/local/nginx/sbin/
desc="nginx daemon"
name=nginx
daemon=/usr/local/nginx/sbin/$name
configfile=/usr/local/nginx/conf/nginx.conf
pidfile=/var/run/nginx.pid
scriptname=/etc/init.d/$name
# gracefully exit if the package has been removed.
test -x $daemon || exit 0
d_start() {
$daemon -c $configfile || echo -n " already running"
}
d_stop() {
kill -quit `cat $pidfile` || echo -n " not running"
}
d_reload() {
kill -hup `cat $pidfile` || echo -n " can't reload"
}
case "$1" in
start)
echo -n "starting $desc: $name"
d_start
echo "."
;;
stop)
echo -n "stopping $desc: $name"
d_stop
echo "."
;;
reload)
echo -n "reloading $desc configuration..."
d_reload
echo "reloaded."
;;
restart)
echo -n "restarting $desc: $name"
d_stop
sleep 1
d_start
echo "."
;;
*)
echo "usage: $scriptname {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
exit 0
chmod +x /etc/init.d/nginx
chkconfig --add nginx
chkconfig --level 2345 nginx on
service nginx start

源碼編譯安裝php5.6

下載php源代碼

cd /usr/local/src
wget http://cn2.php.net/get/php-5.6.24.tar.gz/from/this/mirror
mv mirror php-5.6.24.tar.gz
tar -zxvf php-5.6.24.tar.gz
cd php-5.6.24

安裝依賴的組件

xml擴展

apt-get install libxml2-dev

png擴展

apt-get install libpng12-dev

freetype擴展

apt-get -y install libfreetype6-dev

openssl擴展

apt-get install openssl
apt-get install libcurl3-openssl-dev

jpeg擴展

apt-get install libjpeg-dev

編譯語句

生成配置文件

./configure --prefix=/opt/php --with-config-file-path=/opt/php/lib --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl-dir=/usr --with-openssl --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --enable-gd-native-ttf --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli

安裝了依賴的組件以后,應(yīng)該就不會報錯,如果報錯請安裝缺少的組件,然后重新生成配置文件。

編譯&安裝

make && make install

查看php服務(wù)器配置

當我們遷移服務(wù)器的時候,上述生成配置文件的代碼需要與原php服務(wù)器的一直,我們可以使用php-config --configure-options查看。

php-config的位置在 php/bin/php-config

沒有發(fā)現(xiàn)php.ini?

直接編譯安裝php之后,是沒有php.ini的,我們可以從解壓縮后的目錄copy到/opt/php/lib,然后進行配置生效。

/opt/php/lib是在./configure中配置的路徑

“Ubuntu環(huán)境怎么編譯安裝PHP和Nginx”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向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