LNMP(Linux+Nginx+MySQL+PHP)环境搭建
2014-01-14 21:41
871 查看
这几天重装了系统,重新用源码包搭建了LNMP环境,每次都会有不一样的问题,顺便把搭建过程及遇到的问题记录下来。
Linux:CentOS6.5(32位)
Nginx:1.5.8
MySQL:5.6.15
PHP:5.5.6
1、安装gcc以及gcc-c++
2、关闭防火墙
3、创建一个空白目录(用于存放源码包)
4、libxml2的安装
注:libxml2安装会有问题,我直接使用--with-python=no屏蔽掉,如果需要python支持的话详见:http://www.devsumo.com/technotes/2013/12/linux-building-libxml2-on-red-hat-enterprise-linux/
5、libmcrypt的安装
6、zlib的安装
7、libpng的安装
8、jpeg的安装
9、freetype的安装
10、 autoconf的安装
11、gd库的安装
12、pcre的安装
13、openssl的安装
14、ncurses的安装
15、Nginx的安装
16、MySQL的安装
17、PHP的安装
注:php安装可能会出现相对较多的问题,比如说缺少相对应的库文件,先查看编译选项是否有加入,如果没有解决,重新装相对应的库,再者用yum install 相对应的库-devel。php5.3.3之后的版本都自带了php-fpm,所以只需要在编译选项加上--enable-fpm即可。
18、Nginx的配置
19、Nginx、MySQL和PHP-fpm自启动
20、启动Nginx,结果出现error loading,使用ldd分析
21、测试
浏览器中输入http;//localhost,正常输出,安装成功。
22、phpMyadmin的安装
Linux:CentOS6.5(32位)
Nginx:1.5.8
MySQL:5.6.15
PHP:5.5.6
1、安装gcc以及gcc-c++
yum install gcc yum install gcc-c++
2、关闭防火墙
service iptables stop
3、创建一个空白目录(用于存放源码包)
mkdir /lnmp cd /lnmp
4、libxml2的安装
wget http://xmlsoft.org/sources/libxml2-2.9.1.tar.gz tar -zxvf libxml2-2.9.1.tar.gz cd libxml2-2.9.1.tar.gz ./configure --prefix=/usr/local/libxml2 --with-python=no make && make install
注:libxml2安装会有问题,我直接使用--with-python=no屏蔽掉,如果需要python支持的话详见:http://www.devsumo.com/technotes/2013/12/linux-building-libxml2-on-red-hat-enterprise-linux/
5、libmcrypt的安装
wget http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz/download tar -zxvf libmcrypt-2.5.8.tar.gz cd libmcrypt-2.5.8 ./configure --prefix=/usr/local/libmcrypt --enable-ltdl-install make && make install
6、zlib的安装
wget http://sourceforge.net/projects/libpng/files/zlib/1.2.8/zlib-1.2.8.tar.gz/download tar -zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8 ./configure make && make install
7、libpng的安装
wget http://sourceforge.net/projects/libpng/files/libpng15/1.5.17/libpng-1.5.17.tar.gz/download tar -zxvf libpng-1.5.17.tar.gz cd libpng-1.5.17 ./configure --prefix=/usr/local/libpng make && make install
8、jpeg的安装
wget http://www.ijg.org/files/jpegsrc.v9.tar.gz mkdir /usr/local/jpeg9 mkdir /usr/local/jpeg9/bin mkdir /usr/local/jpeg9/lib mkdir /usr/local/jpeg9/include mkdir -p /usr/local/jpeg9/man/man1 tar -zxvf jpegsrc.v9.tar.gz cd jpeg-9/ ./configure --prefix=/usr/local/jpeg9/ --enable-shared --enable-static make && make install
9、freetype的安装
wget http://sourceforge.net/projects/freetype/files/freetype2/2.5.2/freetype-2.5.2.tar.gz/download tar -zxvf freetype-2.5.2.tar.gz cd freetype-2.5.2 ./configure --prefix=/usr/local/freetype --without-png make && make install
10、 autoconf的安装
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz tar -zxvf autoconf-2.69.tar.gz cd autoconf-2.69 ./configure && make && make install
11、gd库的安装
wget https://google-desktop-for-linux-mirror.googlecode.com/files/gd-2.0.35.tar.gz tar -zxvf gd-2.0.35.tar.gz cd gd/2.0.35/ ./configure --prefix=/usr/local/gd2 --with-png=/usr/local/libpng/ --with-jpeg=/usr/local/jpeg9/ --with-freetype=/usr/local/freetype make && make install
12、pcre的安装
wget http://sourceforge.net/projects/pcre/files/pcre/8.34/pcre-8.34.tar.gz/download tar -zxvf pcre-8.34.tar.gz cd pcre-8.34 ./configure make && make install
13、openssl的安装
wget http://www.openssl.org/source/openssl-1.0.0l.tar.gz tar -zxvf openssl-1.0.0l.tar.gz ./config --prefix=/usr/local/openssl make && make install
14、ncurses的安装
wget ftp://invisible-island.net/ncurses/ncurses-5.9.tar.gz tar -zxvf ncurses-5.9.tar.gz cd ncurses-5.9 ./configure --with-shared --without-debug --without-ada --enable-overwrite make && make install
15、Nginx的安装
wget http://nginx.org/download/nginx-1.5.8.tar.gz groupadd www useradd -g www www tar -zxvf nginx-1.5.8.tar.gz cd nginx-1.5.8 ./configure --user=www --group=www --prefix=/usr/local/nginx --with-openssl=/lnmp/openssl-1.0.0l --with-http_stub_status_module --with-http_ssl_module make && make install
16、MySQL的安装
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15-linux-glibc2.5-i686.tar.gz groupadd mysql useradd -r -g mysql mysql tar -zxvf mysql-5.6.15-linux-glibc2.5-i686.tar.gz cd /usr/local/ ln -s /lnmp/mysql-5.6.15-linux-glibc2.5-i686 mysql cd /usr/local/mysql chown -R mysql . chgrp -R mysql . scripts/mysql_install_db --user=mysql chown -R root . chown -R mysql data cp support-files/mysql.server /etc/init.d/mysql.server bin/mysqld_safe --user=mysql &
17、PHP的安装
wget http://museum.php.net/php5/php-5.5.6.tar.gz tar -zxvf php-5.5.6.tar.gz ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql/ --with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg9/ --with-freetype-dir=/usr/local/freetype/ --with-gd --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets --enable-fpm --with-pdo-mysql=/usr/local/mysql/ --with-png-dir=/usr/local/libpng/ make && make install cp php.ini-development /usr/local/php/etc/php.ini /usr/local/php/sbin/php-fpm
注:php安装可能会出现相对较多的问题,比如说缺少相对应的库文件,先查看编译选项是否有加入,如果没有解决,重新装相对应的库,再者用yum install 相对应的库-devel。php5.3.3之后的版本都自带了php-fpm,所以只需要在编译选项加上--enable-fpm即可。
18、Nginx的配置
vi /usr/local/nginx/conf/nginx.conf #第35行server下找到location / 修改为如下,root为根路径,index为默认解析 location / { root /var/www/html; index index.html index.htm index.php; } #修改fastcgi配置,在server下找到location ~ \.php$(第74行),并修改为如下 location ~ \.php$ { root /va/www/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_sc ript_name; include fastcgi_params; }
19、Nginx、MySQL和PHP-fpm自启动
echo /usr/local/nginx/sbin/nginx >> /etc/rc.d/rc.local echo /usr/local/php/sbin/php-fpm >> /etc/rc.d/rc.local echo /usr/local/mysql/bin/mysqld_safe --user=mysql & >> /etc/rc.d/rc.local
20、启动Nginx,结果出现error loading,使用ldd分析
[root@wen sbin]# ldd $(which /usr/local/nginx/sbin/nginx) linux-gate.so.1 => (0x00898000) libpthread.so.0 => /lib/libpthread.so.0 (0x007d2000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x005d6000) libpcre.so.1 => not found libdl.so.2 => /lib/libdl.so.2 (0x007cb000) libz.so.1 => /lib/libz.so.1 (0x00826000) libc.so.6 => /lib/libc.so.6 (0x00632000) /lib/ld-linux.so.2 (0x0060c000) libfreebl3.so => /lib/libfreebl3.so (0x06e7b000) #发现找不到libpcre.so.1,做个软链接即可 cd /usr/local/lib ln -s libpcre.so.0.0.1 libpcre.so.1 #重启Nginx /usr/local/nginx/sbin/nginx -s reload
21、测试
cd /var/www/html vi index.php <?php echo phpinfo(); ?>
浏览器中输入http;//localhost,正常输出,安装成功。
22、phpMyadmin的安装
wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/4.1.4/phpMyAdmin-4.1.4-all-languages.tar.gz/download tar zxvf phpMyAdmin-4.1.4-all-languages.tar.gz cp -R phpMyAdmin-4.1.4-all-languages /var/www/html/phpMyadmin
相关文章推荐
- nginx的安装
- nginx的安装
- nginx的启动,停止命令
- nginx的启动,停止命令
- 安装nginx
- 安装nginx
- nginx 负载均衡
- 交叉编译 nginx
- “惊群”,看看nginx是怎么解决它的
- Nginx-1.4.7+PHP5.5+Tcmalloc的安装配置以及优化
- nginx web缓存配置
- nginx php 配置
- nginx配置中proxy_redirect的作用(转)
- 重启nginx后丢失nginx.pid的解决方法
- Zabbix(二)之添加主机、item、triggers、Graph、Medias
- 重启或杀掉Nginx进程后丢失nginx.pid的解决办法
- 解析nginx负载均衡
- 解析nginx负载均衡
- Linux下Nginx安全证书ssl配置方法
- Nginx限制IP并发数与下载速度的方法