fedora 15+php 5.3.8+nginx-1.1.6

来源:互联网 发布:扛旗世界纪录 知乎 编辑:程序博客网 时间:2024/04/30 03:47

注意:从php 5.3.3 起,可以直接使用PHP-FPM了,不需要再以打补丁的形式安装了

附补丁代码:gzip -cd php-5.3.2-fpm-0.5.14.diff.gz | patch -d php-5.3.2 -p1

一.安装相关程序库

   yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

二.安装php所需程序库

tar zxvf libiconv-1.13.1.tar.gzcd libiconv-1.13.1/./configure --prefix=/usr/localmakemake installcd ../tar zxvf libmcrypt-2.5.8.tar.gz cd libmcrypt-2.5.8/./configuremakemake install/sbin/ldconfigcd libltdl/./configure --enable-ltdl-installmakemake installcd ../../tar zxvf mhash-0.9.9.9.tar.gzcd mhash-0.9.9.9/./configuremakemake installcd ../ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.laln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.soln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.aln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.laln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.soln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-configtar zxvf mcrypt-2.6.8.tar.gzcd mcrypt-2.6.8//sbin/ldconfig./configuremakemake installcd ../

注意: mcrypt库需要在安装完libmcrypt,mhash库后再安装,并需要执行上面所有ln语句才能安装成功


三.创建相关用户

groupadd wwwuseradd -g www -s /sbin/nologin -M www

四.编译PHP

 ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-openssl=/usr --with-png-dir --with-jpeg-dir --with-freetype-dir --with-iconv-dir=/usr/local  --enable-gd-native-ttf --with-libxml-dir --with-zlib --with-mhash --with-mcrypt --with-ldap --with-ldap-sasl --with-curl=/usr/local --with-curlwrappers --enable-bcmath --enable-calendar --enable-mbstring --enable-ftp --enable-zip --enable-sockets --enable-exif --enable-zend-multibyte --enable-fpm --with-fpm-user=www --with-fpm-group=www make && make install
cp /usr/local/src/php-5.3.8/php.ini-development etc/php.ini

五.配置php-fpm
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.confvim /usr/local/php/etc/php-fpm.conf
查找下面语句,并将前面"#"号去掉。pid = run/php-fpm.piderror_log = log/php-fpm.loglog_level = noticepm.start_serverspm.min_spare_serverspm.max_spare_servers
六.配置php-fpm自启动
cp /usr/local/src/php-5.3.8/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod -R 755 /etc/init.d/php-fpm chkconfig --add php-fpm
七.编译nginx1.1.6
1、安装Nginx所需的pcre库:
tar zxvf pcre-8.10.tar.gzcd pcre-8.10/./configuremake && make install
2. 安装nginx
   ./configure --prefix=/usr/local/nginx
    make    make install
3.配置nginx.conf
location / {root /usr/www;index index.html index.htm index.php;}location ~ \.php$ {root /usr/www;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;include fastcgi_params;}



1、在/etc/init.d/目录下创建脚本vi  /etc/init.d/nginx2、更改脚本权限chmod 775 /etc/init.d/nginx3、编写脚本内容    #!/bin/bash# nginx Startup script for the Nginx HTTP Server# it is v.0.0.2 version.# chkconfig: - 85 15# description: Nginx is a high-performance web and proxy server.#              It has a lot of features, but it's not for everyone.# processname: nginx# pidfile: /var/run/nginx.pid# config: /usr/local/nginx/conf/nginx.confnginxd=/usr/local/nginx/sbin/nginxnginx_config=/usr/local/nginx/conf/nginx.confnginx_pid=/usr/local/nginx/logs/nginx.pidRETVAL=0prog="nginx"# Source function library..  /etc/rc.d/init.d/functions# Source networking configuration..  /etc/sysconfig/network# Check that networking is up.[ ${NETWORKING} = "no" ] && exit 0[ -x $nginxd ] || exit 0# Start nginx daemons functions.start() {if [ -e $nginx_pid ];then   echo "nginx already running...."   exit 1fi   echo -n {1}quot;Starting $prog: "   daemon $nginxd -c ${nginx_config}   RETVAL=$?   echo   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx   return $RETVAL}# Stop nginx daemons functions.stop() {        echo -n {1}quot;Stopping $prog: "        killproc $nginxd        RETVAL=$?        echo        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /usr/local/nginx/logs/nginx.pid} reload() {    echo -n {1}quot;Reloading $prog: "    #kill -HUP `cat ${nginx_pid}`    killproc $nginxd -HUP    RETVAL=$?    echo}# See how we were called.case "$1" instart)        start        ;;stop)        stop        ;;reload)        reload        ;;restart)        stop        start        ;;status)        status $prog        RETVAL=$?        ;;*)        echo {1}quot;Usage: $prog {start|stop|restart|reload|status|help}"        exit 1esacexit $RETVAL   4、设置开机启动
chkconfig --add nginx
chkconfig nginx on





>
	
				
		
原创粉丝点击