Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置
<p><strong>操作环境 </strong></p>
<ul>
<li>
操作系统:mac os lion</li>
<li>
虚拟主机:vmware fusion</li>
<li>
虚拟系统:centos 5.5+</li>
<li>
操作用户:root</li>
<li>
实现目的:搭建lnmp环境.</li>
</ul>
<p>
<br><strong>安装依赖库和开发环境</strong></p>
<p class="codetitle">
<span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
<br>
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<br><br>
#nginx<br>
yum -y install pcre-devel zlib-devel<br><br>
#php<br>
yum -y install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel freetype-devel<br><br>
#mysql<br>
yum -y install bison gcc gcc-c++ autoconf automake zlib* libxml* ncurses-devel libtool-ltdl-devel* mysql-devel</p>
<p>
<br><strong>下载软件包 </strong></p>
<p class="codetitle">
<span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
<br>
#创建目录<br>
mkdir /web<br>
cd /web<br><br>
#php5.3.7<br>
wget http://cn.php.net/distributions/php-5.3.8.tar.bz2<br>
#php库文件<br>
wget http://ncu.dl.sourceforge.net/project/mcrypt/mcrypt/2.6.8/mcrypt-2.6.8.tar.gz<br>
wget http://ncu.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz<br>
wget http://ncu.dl.sourceforge.net/project/mcrypt/libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz<br>
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz<br><br>
#nginx1.0.9<br>
wget http://www.nginx.org/download/nginx-1.0.9.tar.gz<br><br>
#nginx(pcre)<br>
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.13.tar.gz<br><br>
#mysql5.5.17<br>
wget http://dev.mysql.com/get/downloads/mysql-5.5/mysql-5.5.17.tar.gz/from/http://mysql.ntu.edu.tw/<br><br>
#mysql(cmake)<br>
wget http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz</p>
<p>
<br><strong>安装mysql </strong></p>
<p class="codetitle">
<span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
<br>
#安装cmake<br>
tar -zxvf cmake-2.8.6.tar.gz<br>
cd cmake-2.8.6/<br>
./configure<br>
gmake && gmake install && cd ../<br><br>
#添加mysql用户<br>
/usr/sbin/groupadd mysql<br>
/usr/sbin/useradd -g mysql mysql<br>
mkdir -p /data/mysql<br>
chown -r mysql:mysql /data/mysql<br><br>
#安装mysql<br>
tar -zxvf mysql-5.5.17.tar.gz<br>
cd mysql-5.5.17<br>
cmake . -dcmake_install_prefix=/usr/local/mysql -dmysql_datadir=/data/mysql -dsysconfdir=/etc/<br>
make && make install<br><br>
#设置mysql<br>
#在support-files目录中有五个配置信息文件:<br>
#my-small.cnf (内存<=64m)<br>
#my-medium.cnf (内存 128m)<br>
#my-large.cnf (内存 512m)<br>
#my-huge.cnf (内存 1g-2g)<br>
#my-innodb-heavy-4g.cnf (内存 4gb)<br>
cd /usr/local/mysql<br>
cp ./support-files/my-medium.cnf /etc/my.cnf<br>
vi /etc/my.cnf<br>
#在 段增加<br>
datadir = /data/mysql<br>
wait-timeout = 30<br>
max_connections = 512<br>
default-storage-engine = myisam<br>
#在 段修改<br>
max_allowed_packet = 16m<br><br>
#生成授权表<br>
cd /usr/local/mysql<br>
./scripts/mysql_install_db --user=mysql<br><br>
#更改密码<br>
/usr/local/mysql/bin/mysqladmin -u root password 123456<br><br>
#开启mysql<br>
/usr/local/mysql/bin/mysqld_safe &<br><br>
#测试连接mysql<br>
/usr/local/mysql/bin/mysql -u root -p 123456<br>
show databases;<br>
exit;<br><br>
#设置开机启动<br>
vi /etc/rc.d/rc.local<br><br>
#加入<br>
/usr/local/mysql/bin/mysqld_safe &</p>
<p>
<br><strong>安装php</strong></p>
<p class="codetitle">
<span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
<br>
#1<br>
tar -zxvf libiconv-1.14.tar.gz && cd libiconv-1.14/<br>
./configure --prefix=/usr/local<br>
make && make install && cd ../<br><br>
#2<br>
tar -zxvf libmcrypt-2.5.8.tar.gz && cd libmcrypt-2.5.8/<br>
./configure && make && make install<br>
/sbin/ldconfig && cd libltdl/ && ./configure --enable-ltdl-install<br>
make && make install && cd ../<br><br>
#3<br>
tar -zxvf mhash-0.9.9.9.tar.gz && cd mhash-0.9.9.9/ && ./configure<br>
make && make install && cd ../<br><br>
#4<br>
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la<br>
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so<br>
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4<br>
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8<br>
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a<br>
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la<br>
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so<br>
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2<br>
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1<br>
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config<br><br>
#5<br>
tar -zxvf mcrypt-2.6.8.tar.gz &&cd mcrypt-2.6.8/<br>
/sbin/ldconfig<br>
./configure<br>
make && make install && cd ../<br><br>
#6<br>
tar -xjvf php-5.3.8.tar.bz2<br>
cd php-5.3.8<br><br>
./configure --prefix=/usr/local/php \<br>
--with-config-file-path=/usr/local/php/etc \<br>
--with-iconv-dir=/usr/local/ --with-freetype-dir \<br>
--with-mysql=/usr/local/mysql \<br>
--with-mysqli=/usr/local/mysql/bin/mysql_config \<br>
--with-jpeg-dir --with-png-dir --with-zlib \<br>
--with-mhash --enable-sockets --enable-ftp \<br>
--with-libxml-dir --enable-xml --disable-rpath \<br>
--enable-safe-mode --enable-bcmath \<br>
--enable-shmop --enable-sysvsem \<br>
--enable-inline-optimization --with-curl \<br>
--with-curlwrappers \<br>
--enable-mbregex \<br>
--enable-mbstring --with-mcrypt --with-gd \<br>
--enable-gd-native-ttf --with-openssl --with-mhash \<br>
--enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl \<br>
--enable-fpm \<br>
--with-xmlrpc --enable-zip --enable-soap \<br>
--without-pear \<br><br><br>
make zend_extra_libs='-liconv'<br><br>
#注意这里容易出现 make: *** 错误 127<br><br>
#出现mysql client解决方法<br>
#ln -s /usr/local/mysql/lib/libmysqlclient.so /usr/lib/<br>
#ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18<br><br>
#或者chmod: 无法访问 “ext/phar/phar.phar”: 没有那个文件或目录<br>
#make: 错误 1 (忽略)<br>
#解决方法在编译的时候加--without-pear参数<br>
#如果还不行,make的时候不添加 zend_extra_libs='-liconv' 参数<br><br>
make install<br><br>
#选择php.ini配置文件<br>
cp php.ini-production /usr/local/php/etc/php.ini</p>
<p>
<br>
更改php-fpm</p>
<p class="codetitle">
<span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
<br>
#添加www用户<br>
/usr/sbin/groupadd www && /usr/sbin/useradd -g www www<br>
mkdir -p /var/log/nginx && chmod +w /var/log/nginx &&chown -r www:www /var/log/nginx<br>
mkdir -p /data/www && chmod +w /data/www && chown -r www:www /data/www<br><br>
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf<br>
vi /usr/local/php/etc/php-fpm.conf<br><br>
#去掉/更改 配置文件中的;<br>
pm.max_children = 64<br>
pm.start_servers = 20<br>
pm.min_spare_servers = 5<br>
pm.max_spare_servers = 35<br>
pm.max_requests = 1024<br>
user = www<br>
group = www<br><br>
#检查语法是否正确<br>
/usr/local/php/sbin/php-fpm -t<br>
#出现notice: configuration file /usr/local/php/etc/php-fpm.conf test is successful 测试成功<br>
/usr/local/php/sbin/php-fpm &<br>
#设置开机启动<br>
vi /etc/rc.d/rc.local<br>
#在行末加入<br>
/usr/local/php/sbin/php-fpm &<br><br>
#返回安装包目录<br>
cd /web</p>
<p>
<br>
安装nginx</p>
<p class="codetitle">
<span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
<br>
#安装pcre库<br>
tar -zxvf pcre-8.13.tar.gz && cd pcre-8.13/ && ./configure<br>
make && make install && cd ../<br><br>
#安装nginx<br>
tar -zxvf nginx-1.0.9.tar.gz && cd nginx-1.0.9 &&<br>
./configure --user=www --group=www \<br>
--prefix=/usr/local/nginx \<br>
--sbin-path=/usr/local/nginx/sbin/nginx \<br>
--conf-path=/usr/local/nginx/conf/nginx.conf \<br>
--with-http_stub_status_module \<br>
--with-http_ssl_module \<br>
--with-pcre \<br>
--lock-path=/var/run/nginx.lock \<br>
--pid-path=/var/run/nginx.pid<br><br>
make && make install && cd ../<br><br>
#更改配置<br>
vi /usr/local/nginx/conf/nginx.conf<br><br>
#修改一些参数,别直接替换文件,这只是一部分<br>
user www<br><br>
events {<br>
use epoll;<br>
worker_connections 1024;<br>
}<br><br>
location ~ \.php$ {<br>
root html;<br>
fastcgi_pass 127.0.0.1:9000;<br>
fastcgi_index index.php;<br>
fastcgi_param script_filename $document_root$fastcgi_script_name;<br>
include fastcgi_params;<br>
}<br><br>
#注意这里<br>
#$document_root$fastcgi_script_name;#检测配置文件<br>
/usr/local/nginx/sbin/nginx -t<br><br>
#提示表示成功<br>
#nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok<br>
#nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful<br><br>
#开启nginx<br>
/usr/local/nginx/sbin/nginx#平滑重启nginx<br>
/usr/local/nginx/sbin/nginx -s reload<br><br>
#添加开机启动<br>
vi /etc/rc.d/rc.local<br>
#最后移行加入<br>
/usr/local/nginx/sbin/nginx<br><br>
#测试<br>
cd /usr/local/nginx/html/<br>
touch index.php<br>
vi /usr/local/nginx/html/index.php<br>
<?php<br>
phpinfo();<br>
?></p>
<p>
</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" alt="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" src="https://zhuji.jb51.net/uploads/img/202305/6e13a88720df0586223f88b2b42630cb.jpg"></p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" alt="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" src="https://zhuji.jb51.net/uploads/img/202305/6a077b4beca1ae679796c67801a1cec5.jpg"></p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" alt="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" src="https://zhuji.jb51.net/uploads/img/202305/c0d89c9744df82fa631f4a745aacd749.jpg"><br>
</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" alt="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" src="https://zhuji.jb51.net/uploads/img/202305/a06d2ee881af350242caebb0b6fb8860.jpg"></p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" alt="Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置" src="https://zhuji.jb51.net/uploads/img/202305/8d857bd2976524f05c1682abaac61ccb.jpg"><br>
作者:吴佰清</p>
頁:
[1]