Ubuntu環(huán)境編譯安裝PHP和Nginx的方法
本文實(shí)例講述了Ubuntu環(huán)境編譯安裝PHP和Nginx的方法。分享給大家供大家參考,具體如下:
編譯安裝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
開(kāi)機(jī)啟動(dòng)nginx
添加/ect/init.d/nginx,并寫(xiě)入腳本
#! /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
安裝依賴(lài)的組件
xml擴(kuò)展
apt-get install libxml2-dev
png擴(kuò)展
apt-get install libpng12-dev
freetype擴(kuò)展
apt-get -y install libfreetype6-dev
openssl擴(kuò)展
apt-get install openssl apt-get install libcurl3-openssl-dev
jpeg擴(kuò)展
apt-get install libjpeg-dev
編譯語(yǔ)句
生成配置文件
./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
安裝了依賴(lài)的組件以后,應(yīng)該就不會(huì)報(bào)錯(cuò),如果報(bào)錯(cuò)請(qǐng)安裝缺少的組件,然后重新生成配置文件。
編譯&安裝
make && make install
查看php服務(wù)器配置
當(dāng)我們遷移服務(wù)器的時(shí)候,上述生成配置文件的代碼需要與原php服務(wù)器的一直,我們可以使用php-config --configure-options查看。
php-config的位置在 php/bin/php-config
沒(méi)有發(fā)現(xiàn)php.ini?
直接編譯安裝php之后,是沒(méi)有php.ini的,我們可以從解壓縮后的目錄copy到/opt/php/lib,然后進(jìn)行配置生效。
/opt/php/lib是在./configure中配置的路徑
希望本文所述對(duì)大家Ubuntu環(huán)境配置有所幫助。
相關(guān)文章
crontab執(zhí)行時(shí)間與系統(tǒng)時(shí)間不一致問(wèn)題解決
這篇文章主要給大家介紹了關(guān)于crontab執(zhí)行時(shí)間與系統(tǒng)時(shí)間不一致問(wèn)題的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01
Linux安裝Redis實(shí)現(xiàn)過(guò)程及報(bào)錯(cuò)解決方案
這篇文章主要介紹了Linux安裝Redis實(shí)現(xiàn)過(guò)程及報(bào)錯(cuò)解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
Linux中利用sudo進(jìn)行賦權(quán)的方法詳解
sudo的目的:為非根用戶(hù)授予根用戶(hù)的權(quán)限,下面這篇文章主要給大家介紹了關(guān)于Linux中利用sudo進(jìn)行賦權(quán)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01
關(guān)于bash函數(shù)你可能不知道的一些事情(譯)
這篇文章主要給大家介紹了關(guān)于bash函數(shù)你可能不知道的一些事情,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07
Linux定時(shí)備份數(shù)據(jù)庫(kù)到指定郵箱的方法
這篇文章主要介紹了Linux定時(shí)備份數(shù)據(jù)庫(kù)到指定郵箱的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-07
CentOS 7.2配置Apache服務(wù)httpd(下)
這篇文章主要為大家詳細(xì)介紹了CentOS 7.2配置Apache服務(wù) httpd上篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11

