您的位置:首页 > 运维架构 > Nginx

Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17

2013-11-28 15:46 381 查看
操作环境

  操作系统:MacOsLion

  虚拟主机:VMwareFusion

  虚拟系统:Centos5.5+

  操作用户:Root

  实现目的:搭建LNMP环境.

安装依赖库和开发环境



#依赖库和开发工具yum-yinstallgccgcc-c++autoconflibjpeglibjpeg-devellibpnglibpng-develfreetypefreetype-devellibxml2libxml2-develzlibzlib-develglibcglibc-develglib2glib2-develbzip2bzip2-develncursesncurses-develcurlcurl-devele2fsprogse2fsprogs-develkrb5krb5-devellibidnlibidn-developensslopenssl-developenldapopenldap-develnss_ldapopenldap-clientsopenldap-servers
#Nginxyum-yinstallpcre-develzlib-devel
#Phpyum-yinstallgd-devellibjpeg-devellibpng-develfreetype-devellibxml2-develcurl-develfreetype-devel#Mysqlyum-yinstallbisongccgcc-c++autoconfautomakezlib*libxml*ncurses-devellibtool-ltdl-devel*mysql-devel





下载软件包




#创建目录mkdir/webcd/web#PHP5.3.7wgethttp://down1.chinaunix.net/distfiles/php-5.3.8.tar.bz2

#PHP库文件
wgethttp://down1.chinaunix.net/distfiles/mcrypt-2.6.4.tar.gz
wgethttp://down1.chinaunix.net/distfiles/mhash-0.9.3.tar.gz
wgethttp://down1.chinaunix.net/distfiles/libmcrypt-2.5.7.tar.gz
wgethttp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz#Nginx1.0.9wgethttp://www.nginx.org/download/nginx-1.0.9.tar.gz#Nginx(pcre)wgetftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.13.tar.gz#Mysql5.5.17wgethttp://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.17.tar.gz/from/http://mysql.ntu.edu.tw/#Mysql(cmake)wgethttp://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz




安装Mysql



#安装cmaketar-zxvfcmake-2.8.6.tar.gzcdcmake-2.8.6/./configuregmake&&gmakeinstall&&cd../
#添加mysql用户/usr/sbin/groupaddmysql/usr/sbin/useradd-gmysqlmysqlmkdir-p/data/mysqlchown-Rmysql:mysql/data/mysql
#安装Mysqltar-zxvfmysql-5.5.17.tar.gzcdmysql-5.5.17cmake.-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-DMYSQL_DATADIR=/data/mysql-DSYSCONFDIR=/etc/make&&makeinstall
#设置Mysql#在support-files目录中有五个配置信息文件:#my-small.cnf(内存<=64M)#my-medium.cnf(内存128M)#my-large.cnf(内存512M)#my-huge.cnf(内存1G-2G)#my-innodb-heavy-4G.cnf(内存4GB)cd/usr/local/mysqlcp./support-files/my-medium.cnf/etc/my.cnfvi/etc/my.cnf#在[mysqld]段增加datadir=/data/mysqlwait-timeout=30max_connections=512default-storage-engine=MyISAM#在[mysqld]段修改max_allowed_packet=16M
#生成授权表cd/usr/local/mysql./scripts/mysql_install_db--user=mysql
#更改密码/usr/local/mysql/bin/mysqladmin-urootpassword123456
#开启mysql/usr/local/mysql/bin/mysqld_safe&
#测试连接mysql/usr/local/mysql/bin/mysql-uroot-p123456showdatabases;exit;
#设置开机启动vi/etc/rc.d/rc.local
#加入/usr/local/mysql/bin/mysqld_safe&




安装PHP



#1tar-zxvflibiconv-1.14.tar.gz&&cdlibiconv-1.14/./configure--prefix=/usr/localmake&&makeinstall&&cd../
#2tar-zxvflibmcrypt-2.5.7.tar.gz&&cdlibmcrypt-2.5.7/
./configure&&make&&makeinstall
/sbin/ldconfig&&cdlibltdl/&&./configure--enable-ltdl-install
make&&makeinstall&&cd../
#3tar-zxvfmhash-0.9.3.tar.gz&&cdmhash-0.9.3/&&./configure
make&&makeinstall&&cd../
#4ln-s/usr/local/lib/libmcrypt.la/usr/lib/libmcrypt.la
ln-s/usr/local/lib/libmcrypt.so/usr/lib/libmcrypt.so
ln-s/usr/local/lib/libmcrypt.so.4/usr/lib/libmcrypt.so.4
ln-s/usr/local/lib/libmcrypt.so.4.4.8/usr/lib/libmcrypt.so.4.4.8
ln-s/usr/local/lib/libmhash.a/usr/lib/libmhash.a
ln-s/usr/local/lib/libmhash.la/usr/lib/libmhash.la
ln-s/usr/local/lib/libmhash.so/usr/lib/libmhash.so
ln-s/usr/local/lib/libmhash.so.2/usr/lib/libmhash.so.2
ln-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-config
#5tar-zxvfmcrypt-2.6.8.tar.gz&&cdmcrypt-2.6.8//sbin/ldconfig./configuremake&&makeinstall&&cd../
#6tar-xjvfphp-5.3.8.tar.bz2cdphp-5.3.8
./configure--prefix=/usr/local/php\--with-config-file-path=/usr/local/php/etc\--with-iconv-dir=/usr/local/--with-freetype-dir\--with-mysql=/usr/local/mysql\--with-mysqli=/usr/local/mysql/bin/mysql_config\--with-jpeg-dir--with-png-dir--with-zlib\--with-mhash--enable-sockets--enable-ftp\--with-libxml-dir--enable-xml--disable-rpath\--enable-safe-mode--enable-bcmath\--enable-shmop--enable-sysvsem\--enable-inline-optimization--with-curl\--with-curlwrappers\--enable-mbregex\--enable-mbstring--with-mcrypt--with-gd\--enable-gd-native-ttf--with-openssl--with-mhash\--enable-pcntl--enable-sockets--with-ldap--with-ldap-sasl\--enable-fpm\--with-xmlrpc--enable-zip--enable-soap\--without-pear\
makeZEND_EXTRA_LIBS='-liconv'
#注意这里容易出现make:***[ext/phar/phar.php]错误127#出现mysqlclient解决方法#ln-s/usr/local/mysql/lib/libmysqlclient.so/usr/lib/#ln-s/usr/local/mysql/lib/libmysqlclient.so.18/usr/lib/libmysqlclient.so.18#或者chmod:无法访问“ext/phar/phar.phar”:没有那个文件或目录#make:[ext/phar/phar.phar]错误1(忽略)#解决方法在编译的时候加--without-pear参数

#如果还不行,make的时候不添加ZEND_EXTRA_LIBS='-liconv'参数makeinstall
#选择PHP.ini配置文件cpphp.ini-production/usr/local/php/etc/php.ini




更改PHP-FPM



#添加WWW用户
/usr/sbin/groupaddwww&&/usr/sbin/useradd-gwwwwww
mkdir-p/var/log/nginx&&chmod+w/var/log/nginx&&chown-Rwww:www/var/log/nginx
mkdir-p/data/www&&chmod+w/data/www&&chown-Rwww:www/data/www
cp/usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf
vi/usr/local/php/etc/php-fpm.conf
#去掉/更改配置文件中的;pm.max_children=64pm.start_servers=20pm.min_spare_servers=5pm.max_spare_servers=35pm.max_requests=1024user=wwwgroup=www
#检查语法是否正确/usr/local/php/sbin/php-fpm-t#出现NOTICE:configurationfile/usr/local/php/etc/php-fpm.conftestissuccessful测试成功/usr/local/php/sbin/php-fpm&#设置开机启动vi/etc/rc.d/rc.local#在行末加入/usr/local/php/sbin/php-fpm&
#返回安装包目录cd/web




安装Nginx



#安装pcre库tar-zxvfpcre-8.13.tar.gz&&cdpcre-8.13/&&./configuremake&&makeinstall&&cd../
#安装Nginxtar-zxvfnginx-1.0.9.tar.gz&&cdnginx-1.0.9&&./configure--user=www--group=www\--prefix=/usr/local/nginx\--sbin-path=/usr/local/nginx/sbin/nginx\--conf-path=/usr/local/nginx/conf/nginx.conf\--with-http_stub_status_module\--with-http_ssl_module\--with-pcre\--lock-path=/var/run/nginx.lock\--pid-path=/var/run/nginx.pid
make&&makeinstall&&cd../
#更改配置vi/usr/local/nginx/conf/nginx.conf
#修改一些参数,别直接替换文件,这只是一部分
userwww
events{
useepoll;
worker_connections1024;
}
location~\.php${
roothtml;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
includefastcgi_params;
}
#注意这里#$document_root$fastcgi_script_name;

#检测配置文件
/usr/local/nginx/sbin/nginx-t
#提示表示成功#nginx:theconfigurationfile/usr/local/nginx/conf/nginx.confsyntaxisok#nginx:configurationfile/usr/local/nginx/conf/nginx.conftestissuccessful
#开启Nginx/usr/local/nginx/sbin/nginx&

#平滑重启Nginx
/usr/local/nginx/sbin/nginx-sreload
#添加开机启动vi/etc/rc.d/rc.local#最后移行加入/usr/local/nginx/sbin/nginx
#测试cd/usr/local/nginx/html/touchindex.phpvi/usr/local/nginx/html/index.php<?phpphpinfo();?>














转自:/article/5268594.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: