Ubuntu环境编译安装PHP和Nginx的方法
本文实例讲述了Ubuntu环境编译安装PHP和Nginx的方法。分享给大家供大家参考,具体如下:
编译安装nginx
切换目录到工作文件夹:
cd/usr/local/src
下载pcre源代码并安装
wgetftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-10.20.tar.gz tar-zxvfpcre2-10.20.tar.gz mv./pcre2-10.20.tar.gz./pcre cdpcre ./configure--prefix=/usr/local/pcre make&&makeinstall
下载zlib源代码并安装
wgethttp://tenet.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz tar-zxvfzlib-1.2.8.tar.gz mv./zlib-1.2.8.tar.gz./zlib cdzlib ./configure--prefix=/usr/local/zlib make&&makeinstall
下载nginx源代码并安装
wgethttp://nginx.org/download/nginx-1.8.1.tar.gz tar-zxvfnginx-1.8.1.tar.gz cdnginx-1.8.1 ./configure--prefix=/usr/local/nginx--with-pcre=/usr/local/pcre--with-zlib=/usr/local/zlib make&&makeinstall
开机启动nginx
添加/ect/init.d/nginx,并写入脚本
#!/bin/bash #Description:StartupscriptforwebserveronCentOS.cpitin/etc/init.dand #chkconfig--addnginx&&chkconfignginxon #thenyoucanuseservercommandcontrolnginx # #chkconfig:23450899 #description:Starts,stopsnginx set-e PATH=$PATH:/usr/local/nginx/sbin/ DESC="nginxdaemon" 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 #Gracefullyexitifthepackagehasbeenremoved. test-x$DAEMON||exit0 d_start(){ $DAEMON-c$CONFIGFILE||echo-n"alreadyrunning" } d_stop(){ kill-QUIT`cat$PIDFILE`||echo-n"notrunning" } d_reload(){ kill-HUP`cat$PIDFILE`||echo-n"can'treload" } 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$DESCconfiguration..." d_reload echo"reloaded." ;; restart) echo-n"Restarting$DESC:$NAME" d_stop sleep1 d_start echo"." ;; *) echo"Usage:$SCRIPTNAME{start|stop|restart|force-reload}">&2 exit3 ;; esac exit0
chmod+x/etc/init.d/nginx chkconfig--addnginx chkconfig--level2345nginxon servicenginxstart
源码编译安装php5.6
下载php源代码
cd/usr/local/src wgethttp://cn2.php.net/get/php-5.6.24.tar.gz/from/this/mirror mvmirrorphp-5.6.24.tar.gz tar-zxvfphp-5.6.24.tar.gz cdphp-5.6.24
安装依赖的组件
xml扩展
apt-getinstalllibxml2-dev
png扩展
apt-getinstalllibpng12-dev
freetype扩展
apt-get-yinstalllibfreetype6-dev
openssl扩展
apt-getinstallopenssl apt-getinstalllibcurl3-openssl-dev
jpeg扩展
apt-getinstalllibjpeg-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
安装了依赖的组件以后,应该就不会报错,如果报错请安装缺少的组件,然后重新生成配置文件。
编译&安装
make&&makeinstall
查看php服务器配置
当我们迁移服务器的时候,上述生成配置文件的代码需要与原php服务器的一直,我们可以使用php-config--configure-options查看。
php-config的位置在php/bin/php-config
没有发现php.ini?
直接编译安装php之后,是没有php.ini的,我们可以从解压缩后的目录copy到/opt/php/lib,然后进行配置生效。
/opt/php/lib是在./configure中配置的路径
希望本文所述对大家Ubuntu环境配置有所帮助。