LNMP环境搭建

安装常用依赖库

# yum install -y 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 gd gd-devel  bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel  openssl  openssl-devel libtool libtool-devel libtool-ltdl-devel c-ares libaio

安装iconv

# tar -zxf libiconv*.tar.gz
# cd libiconv*
# ./configure --prefix=/usr/local/
# make && make install

安装bison

# tar -zxf bison*.tar.gz
# cd bison*
# ./configure
# make && make install

安装mhash

# tar -jxf mhash*.tar.bz2
# cd mhash*
# ./configure
# make && make install

安装mcrypt

# tar -zxf libmcrypt*.tar.gz
# cd libmcrypt*
# ./configure
# make && make install
# cd libltdl/
# ./configure --enable-ltdl-install
# make && make install


# tar -zxf mcrypt*tar.gz
# cd mcrypt*
# export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
# ./configure
# make && make install

安装Nginx

安装 pcre

# tar -zxf pcre*.tar.gz
# cd pcre*
# ./configure
# make && make install

安装nginx

# useradd www -s /sbin/nologin
# tar -zxf nginx*.tar.gz
# cd nginx*
# ./configure --prefix=${nginxdir} --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module 
# make && make install

//启动
/usr/local/nginx/sbin/nginx

//测试
http://IP

安装Mysql

安装cmake

# tar -zxf cmake-2.8*.tar.gz
# cd cmake-2.8*
# ./configure
# gmake
# make && make install

安装Mysql

# tar -zxf mysql-boost-5.7*.tar.gz
# cd mysql-5.7*
# cmake ./ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_BOOST=boost
# make && make install

//拷贝配置文件和启动脚本 

# cp support-files/my-innodb-heavy-4G.cnf /etc/my.cnf
# cp support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld

//配置mysql相关目录和配置文件

# useradd mysql -s /sbin/nologin
# mkdir -p /data/mysql/data
# mkdir -p /data/mysql/binlog
# mkdir -p /data/mysql/log
# chown mysql.mysql /data/mysql -R

# vim /etc/my.cnf
在[mysqld]下加入
pid-file = /data/mysql/mysql.pid
character_set_server=utf8
basedir = /usr/local/mysql
datadir = /data/mysql/data
#错误日志
log-error = /data/mysql/log/error.log
#查询日志,一般不开启
#general-log=1
#general-log-file=/data/mysql/log/mysql.log
#慢查询日志
slow_query_log = ON
long_query_time = 2
slow_query_log_file = /data/mysql/log/slow.log
#binlog
log-bin=/data/mysql/binlog/mysql-binlog
binlog_format=mixed

初始化并启动(以下命令是5.7版本,5.7之前版本为./scripts/mysql_install_db --user=mysql后面参数一样)

# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/data/mysql/data/ --basedir=/usr/local/mysql
//启动命令
#/etc/init.d/mysqld start

安装PHP

# tar -zxf php-7.1*.tar.gz
# cd php-7.1*
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc  --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gd --with-freetype-dir --with-jpeg-dir --with-png-dir --with-libxml-dir --with-iconv=/usr/local/ --with-zlib --with-bz2 --with-mcrypt --with-mhash --with-openssl --with-curl --with-pear --with-gettext --enable-mbstring --enable-gd-native-ttf --enable-zip --enable-ftp --enable-sockets --enable-calendar --enable-bcmath --enable-exif --enable-shmop --enable-fpm --with-fpm-user=www --with-fpm-group=www --disable-debug
# make && make install

拷贝PHP启动脚本和配置文件

# cp sapi/fpm/init.d.php-fpm.in /etc/init.d/php-fpm
修改启动脚本中php的安装目录
# chmod +x /etc/init.d/php-fpm
# cp php.ini-production /usr/local/php/etc/php.ini
# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

启动PHP-FPM

/etc/init.d/php-fpm start

配置Nginx虚拟主机(php测试页)

//修改nginx配置
# vim /usr/local/nginx/conf/nginx.conf
加入
include         vhosts/*.conf;

#mkdir /usr/local/nginx/conf/vhosts
//配置php测试页的虚拟主机
# vim /usr/local/nginx/conf/vhosts/index.conf
server {
        listen       8008;
        server_name  localhost;
        index   index.php index.html;
        root /data/htdocs/test;


        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi.conf;
                }

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
                expires      30d;
        }

        location ~ .*\.(js|css)?$ {
                expires      1h;
        }
        access_log  /data/logs/www/index-test_access.log  www;
        error_log  /data/logs/www/index-test_error.log;
}
//创建php测试页
# mkdir -p /data/htdocs/test
# mkdir -p /data/logs/www
# chown www.www /data/htdocs -R
# chown www.www /data/htdocs/www -R

vim /data/htdocs/test
#vim /usr/local/nginx/html/index.php
<?php
    phpinfo();
?>

重启nginx,访问测试地址:  http://IP:8008,出现如下界面表示php解析成功(下面是5.x的测试页,7.x的也差不多)

 

fpm启动报错解决方法

ALERT: [pool www] pm.min_spare_servers(0) must be a positivevalue

编辑php-fpm.conf找到pm.min_spare_servers去除;号,注意非注释内容pm.min_spare_servers

ALERT: [pool www] pm.max_spare_servers(0) must be a positivevalue

编辑php-fpm.conf找到pm.max_spare_servers去除;号,同样非注释内容pm.max_spare_servers

WARNING: [pool www] pm.start_servers is not set. It's been setto 20.

编辑php-fpm.conf找到pm.start_servers去除;号,同样非注释内容pm.start_servers

ERROR: bind() for address '127.0.0.1:9000' failed: Addressalready in use (98)

# netstat -ntlpps -ef|grep php查看进程,有N多进程

nobody 26152 26151 0 15:45 ? 00:00:00 php-fpm: pool www

nobody 26153 26151 0 15:45 ? 00:00:00 php-fpm: pool www

nobody 26154 26151 0 15:45 ? 00:00:00 php-fpm: pool www

nobody 26155 26151 0 15:45 ? 00:00:00 php-fpm: pool www

# netstat -ntlpps -ef|grep php查看进程,有N多进程

 


PS:

安装ZendGuardLoader(php5.x版本)

# tar -zxvfZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
# cd ZendGuardLoader-php-5.3-linux-glibc23-x86_64
# mv ZendGuardLoader.so /usr/local/php/lib/php/extensions/
# vim /usr/local/php/etc/php.ini

[zend]
zend_optimizer.optimization_level=15
zend_extension=/usr/local/php/lib/php/extensions/ZendGuardLoader.so


安装eaccelerator(php5.x版本)

#tar -zxvf eaccelerator-eaccelerator-42067ac.tar.gz
#cd eaccelerator-eaccelerator-42067ac
#/usr/local/php/bin/phpize
#./configure --enable-eaccelerator=shared--with-php-config=/usr/local/php/bin/php-config
#make && make install

#vim /usr/local/php/etc/php.ini

[eaccelerator]
extension=/usr/local/php/lib/php/extensions/eaccelerator.so
eaccelerator.shm_size=64
eaccelerator.cache_dir=/tmp/eaccelerator
eaccelerator.enable=1
eaccelerator.optimizer=1
eaccelerator.check_mtime=1
eaccelerator.debug=0
eaccelerator.log_file=/var/log/eaccelerator.log
eaccelerator.filter=
eaccelerator.shm_max=0
eaccelerator.shm_ttl=0
eaccelerator.shm_prune_period=0
eaccelerator.shm_only=0

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值