当前位置:首页 > CN2资讯 > 正文内容

Nginx + PHP (FastCGI) + MySql + PHP-fpm配置

20小时前CN2资讯

 

 

环境:Centos 5.6 64bit --默认安装
安装编译工具: yum -y install gcc gcc-c++ autoconf automake 创建相应用户: useradd -m nginx -s /sbin/nologin -d /usr/local/nginx useradd -m mysql -s /sbin/nologin -d /usr/local/mysql
安装mysql,只是让PHP支持mysql: tar zxvf mysql-5.0.92.tar.gz cd mysql-5.0.92 ./configure  --prefix=/usr/local/mysql  --localstatedir=/usr/local/mysql/data #为mysql数据库存放目录 --with-charset=utf8  --with-extra-charsets=all  --with-berkeley-db  --with-innodb  --without-readline  --enable-assembler  --with-pthread  --enable-thread-safe-client  --with-client-ldflags=-all-static
/* 编译时如果出现以下错误: checking for termcap functions library...  configure: error: No curses/termcap library found 请安装ncurses-5.6.tar.gz: tar zxvf ncurses-5.6.tar.gz cd ncurses-5.6 ./configure --prefix=/usr --with-shared --without-debug make make install */ /* 编译时如出现以下错误,请在编译命令为加上: --with-readline 或 --with-libedit 即: ./configure  --prefix=/usr/local/mysql  --localstatedir=/home/var  --with-charset=utf8  --with-extra-charsets=all  --with-berkeley-db  --with-innodb  --without-readline  --enable-assembler  --with-pthread  --enable-thread-safe-client  --with-client-ldflags=-all-static --with-readline or  --with-libedit configure: error: Could not find system readline or libedit libraries           Use --with-readline or --with-libedit to use the bundled           versions of libedit or readline */
make && make install cd ..
tar zxvf libiconv-1.13.1.tar.gz cd libiconv-1.13.1 ./configure  --prefix=/usr/local/libiconv
make && make install cd ..
tar zxvf libxml2-2.6.31.tar.gz cd libxml2-2.6.31 ./configure  --prefix=/usr/local/libxml2
make && make install cd..
tar zxvf libtool-1.5.22.tar.gz cd libtool-1.5.22 ./configure  --prefix=/usr/local/bin/libtool
make && make install cd ..
mkdir -pv /usr/local/jpeg6/{,bin,lib,include,man/man1,man1} tar vzxf jpegsrc.v6b.tar.gz cd jpeg-6b ./configure --prefix=/usr/local/jpeg6 --enable-shared --enable-static make && make install /* 安装时如出现以下错误: ./libtool --mode=compile gcc -O2  -I. -c ./jcapimin.c make: ./libtool: Command not found make: *** [jcapimin.lo] Error 127 请安装: yum -y install libtool libtool-ltdl libtool-ltdl-devel cp /usr/share/libtool/config.sub   . cp /usr/share/libtool/config.guess   . make clean ./configure --prefix=/usr/local/jpeg6 --enable-shared --enable-static make && make install */ cd ..
tar zvxf freetype-2.3.5.tar.gz  cd freetype-2.3.5 ./configure  --prefix=/usr/local/freetype  make && make install cd ..
tar zvxf zlib-1.2.3.tar.gz  cd zlib-1.2.3 ./configure  --prefix=/usr/local/zlib
make && make install cd ..
tar zxvf libpng-1.2.40.tar.gz cd libpng-1.2.40 cp scripts/makefile.std makefile make && make install /* 安装时如出现以下错误: png.h:497:18: error: zlib.h: No such file or directory 请安装:zlib-devel yum install zlib-devel */ cd ..
tar xzvf gd-2.0.35.tar.gz cd gd-2.0.35 ./configure  --prefix=/usr/local/gd  --with-png=/usr/local/libpng  --with-zlib=/usr/local/zlib  --with-freetype=/usr/local/freetype  --with-jpeg=/usr/local/jpeg6  --with-libxml=/usr/local/libxml2  make /* 安装时如出现以下错误: configure.ac:64: error: possibly undefined macro: AM_ICONV If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. make: *** [configure] Error 1 需在编译时增加参数: --enable-m4_pattern_allow 即: ./configure  --prefix=/usr/local/gd  --with-png=/usr/local/libpng  --with-zlib=/usr/local/zlib  --with-freetype=/usr/local/freetype  --with-jpeg=/usr/local/jpeg6  --with-libxml=/usr/local/libxml2  --enable-m4_pattern_allow */ /* 如出现以下错误: /usr/bin/ld: /usr/local/lib/libpng.a(png.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libpng.a: could not read symbols: Bad value collect2: ld returned 1 exit status make[2]: *** [] Error 1 make[2]: Leaving directory `/root/Nginx/gd-2.0.35' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/Nginx/gd-2.0.35' make: *** [all] Error 2 请修改libpng文件,再重新安装libpng: vi ../libpng-1.2.40/makefile 查找到CFLAGS行: /CFLAGS/ 将:CFLAGS=-I$(ZLIBINC) -O # -g -DPNG_DEBUG=5 =>> 修改为:CFLAGS=-I$(ZLIBINC) -O -fPIC # -g -DPNG_DEBUG=5 cd ../libpng-1.2.40/ make clean make && make install */ make install cd ..
tar -zxvf libmcrypt-2.5.7.tar.gz cd libmcrypt-2.5.7 ./configure make make install cd ..
ln -s /usr/local/lib/ /usr/lib/ ln -s /usr/local/lib/ /usr/lib/ ln -s /usr/local/lib/.4 /usr/lib/.4 ln -s /usr/local/lib/.4.4.8 /usr/lib/.4.4.8
 安装PHP前,需要安装: yum -y install curl-devel openldap-devel openssl-devel libxml2-devel
tar zxvf php-5.2.17.tar.gz gzip -cd php-5.2.17-fpm-0.5.14.diff.gz | patch -d php-5.2.17 -p1 cd php-5.2.17 ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv=/usr/local/libiconv/ --with-libxml-dir=/usr/local/libxml2 --with-gd=/usr/local/gd/ --with-jpeg-dir=/usr/local/jpeg6/ --with-zlib-dir=/usr/local/zlib --with-png-dir=/usr/local/lib --with-freetype-dir=/usr/local/freetype --with-mysql=/usr/local/mysql --with-mcrypt=/usr/local/lib/libmcrypt --enable-mbstring --with-openssl --enable-ftp --with-curl --enable-fastcgi --enable-xml --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization  --with-curlwrappers --enable-mbregex  --enable-fpm --enable-force-cgi-redirect --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl make make install cp php.ini-dist /usr/local/php/lib/php.ini cd ..
tar zxvf pcre-8.01.tar.gz cd pcre-8.01/ ./configure
make && make install cd ..
tar zxvf nginx-0.9.5.tar.gz cd nginx-0.9.5/ ./configure  --with-http_stub_status_module  --with-http_ssl_module  --user=nginx  --group=nginx  --with-http_realip_module
make && make install cd ..
tar zxvf memcache-2.2.5.tgz cd memcache-2.2.5/ /usr/local/php/bin/phpize ./configure  --with-php-config=/usr/local/php/bin/php-config make && make install cd ..
tar jxvf eaccelerator-0.9.5.3.tar.bz2 cd eaccelerator-0.9.5.3/ /usr/local/php/bin/phpize ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config make && make install cd ..
mkdir /tmp/eaccelerator chmod 777 /tmp/eaccelerator chown nginx:nginx /tmp/eaccelerator
sed -i 's/extension_dir = \"\.\/\"/extension_dir = \"\/usr\/local\/php\/lib\/php\/extensions\/no-debug-non-zts-20060613\/\"/'  /usr/local/php/lib/php.ini sed -i '492i\extension = \"memcache\.so\"' /usr/local/php/lib/php.ini sed -i 's/output_buffering = Off/output_buffering = On/'  /usr/local/php/lib/php.ini sed -i '522i\cgi\.fix\_pathinfo=0'  /usr/local/php/lib/php.ini
echo '[eaccelerator] zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/" eaccelerator.shm_size="16" eaccelerator.cache_dir="/tmp/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="0" eaccelerator.compress_level="9" eaccelerator.keys = "disk_only" eaccelerator.sessions = "disk_only" eaccelerator.content = "disk_only" ' >>/usr/local/php/lib/php.ini
echo ' fastcgi_param  GATEWAY_INTERFACE  CGI/1.1; fastcgi_param  SERVER_SOFTWARE    nginx;
fastcgi_param  QUERY_STRING       $query_string; fastcgi_param  REQUEST_METHOD     $request_method; fastcgi_param  CONTENT_TYPE       $content_type; fastcgi_param  CONTENT_LENGTH     $content_length;
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name; fastcgi_param  SCRIPT_NAME        $fastcgi_script_name; fastcgi_param  REQUEST_URI        $request_uri; fastcgi_param  DOCUMENT_URI       $document_uri; fastcgi_param  DOCUMENT_ROOT      $document_root; fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REMOTE_ADDR        $remote_addr; fastcgi_param  REMOTE_PORT        $remote_port; fastcgi_param  SERVER_ADDR        $server_addr; fastcgi_param  SERVER_PORT        $server_port; fastcgi_param  SERVER_NAME        $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect fastcgi_param  REDIRECT_STATUS    200; '>> /usr/local/nginx/conf/fcgi.conf
mv /usr/local/php/etc/php-fpm.conf /usr/local/php/etc/php-fpm.conf.bak cp php-fpm.conf   /usr/local/php/etc/php-fpm.conf
mv /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak cp $dir/nginx.conf /usr/local/nginx/conf/nginx.conf
mkdir -p /var/nginx/{www.gdzy.cn,} chown nginx:nginx /var/nginx/www.gdzy.cn/ chown nginx:nginx /var/nginx// mkdir /var/log/nginx/ chown nginx:nginx /var/log/nginx/
echo '<?phpinfo();?>' >/var/nginx/www.gdzy.cn/index.php
/usr/local/php/sbin/php-fpm start /usr/local/nginx/sbin/nginx    

 

 

    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/26516.html

    分享给朋友:

    “Nginx + PHP (FastCGI) + MySql + PHP-fpm配置” 的相关文章