LNMP环境安装步骤

发布时间:2020/05/11 编辑:天马行空 阅读(107)

一、安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel



二、首先要安装 PCRE

#下载 PCRE 安装包
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
#解压安装包
tar zxvf pcre-8.35.tar.gz
#进入安装包目录
cd pcre-8.35
#编译安装
./configure
make && make install
#查看pcre版本
pcre-config --version



三、安装 Nginx

#下载 Nginx
wget http://nginx.org/download/nginx-1.13.9.tar.gz
#解压安装包
tar -zvxf nginx-1.13.9.tar.gz
#进入安装包目录
cd nginx-1.13.9
#编译安装
./configure --prefix=/home/wwwroot/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install


四、Nginx 配置

#创建 Nginx 运行使用的用户 www:
/usr/sbin/groupadd www
useradd -r -g www www
#修改配置文件nginx.conf
vi /home/wwwroot/nginx/conf/nginx.conf
#检查配置文件是否正确
/home/wwwroot/nginx/sbin/nginx -t
#启动
/home/wwwroot/nginx/sbin/nginx
/home/wwwroot/nginx/sbin/nginx -s reload            # 重新载入配置文件
/home/wwwroot/nginx/sbin/nginx -s reopen            # 重启 Nginx
/home/wwwroot/nginx/sbin/nginx -s stop              # 停止 Nginx

设置nginx为系统服务,将nginx拷贝到/etc/init.d/nginx,并修改路径

chmod a+x /etc/init.d/nginx
chkconfig --add nginx
chkconfig  nginx on


开启:/etc/init.d/nginx start
关闭:/etc/init.d/nginx stop
状态:/etc/init.d/nginx status
重启:/etc/init.d/nginx restart

五、安装php

#下载安装包
wget http://museum.php.net/php5/php-5.4.17.tar.gz
#解压
tar -zvxf php-5.4.17.tar.gz
#安装扩展
yum install gd gd-devel ttf freetype curl-devel pcre-devel zlib-devel libxml2-devel bzip2-devel libxpm-devel libXpm libicu-devel libXpm-devel.i386 libXpm-devel.i586 libXpm-devel.i686 mbstring exif libicu-devel libmcrypt-devel php-mcrypt
#编译
./configure  --prefix=/home/wwwroot/php --with-mysql=mysqlnd --with-config-file-path=/home/wwwroot/php/lib --enable-mysqlnd --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --enable-fpm
#安装
make && make install

注意:如果要重新编译一定要先执行 make clean 切记!!!!!!

6、配置php-fpm

cd /home/wwwroot/php/etc/
cp php-fpm.conf.default php-fpm.conf
vi php-fpm.conf
#将user = nobody group = nobody 修改为 user = www group = www
#将;pid = run/php-fpm.pid 前面的分号删掉

#创建php.ini
cp 源码路径/php-5.4.17/php.ini-development /home/wwwroot/php/lib/php.ini

#设置php-fpm开机启动
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

#设置权限并启动php-fpm:
chmod 755 /etc/init.d/php-fpm
/etc/init.d/php-fpm start
chkconfig --add php-fpm

#最后,给出php-fpm以服务的方式启动、停止和重启:
service php-fpm start
service php-fpm stop
service php-fpm reload


六、结合php+nginx

cd /home/wwwroot/nginx/conf
vi  nginx.conf
user   www  www;  #修改nginx运行账号为:www组的www用户
index  index.php index.html index.htm;   #增加index.php
location ~ \.php$ {
root           html;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
include        fastcgi_params;
}


#取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径
#验证nginx配置语法

/home/wwwroot/nginx/sbin/nginx -t



#测试

cd /home/wwwroot/nginx/html
vim index.php


//内容如下
<?php phpinfo(); ?>
#如果能显示出php的环境信息,则表示配置成功


7、配置虚拟主机
在/home/wwwroot/nginx/conf下新建目录

mkdir vhosts
cd vhosts
vim onethinkcms.conf

// 加入如下配置

server {
listen  80;
server_name  netljc.com  old.netljc.com;
access_log  /home/wwwroot/nginx/logs/netljc.log;
location / {
root   /home/wwwroot/www/netljc/;
index  index.php index.html index.htm;
}
#  error_page   500 502 503 504  /50x.html;
#  location = /50x.html  {
#      root   /usr/share/nginx/html;
# }
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ .php$ {
# 这里的值对应的是$document_root
root /home/wwwroot/www/netljc;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
#注意这里的路径
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
include        fastcgi_params;
}
}


八、安装mysql
#安装cmake

yum install cmake ncurses-devel -y


#下载mysql

wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.21-el7-x86_64.tar.gz


#解压

tar -zvxf mysql-5.7.21-el7-x86_64.tar.gz


#创建安装目录及数据存放目录

mkdir -p /home/wwwroot/mysql
mkdir -p /home/wwwroot/mysql/data


#创建mysql用户及用户组

groupadd mysql
useradd -r -g mysql mysql


#安装

cd mysql-5.7.21-el7-x86_64
cmake -DCMAKE_INSTALL_PREFIX=/home/wwwroot/mysql -DMYSQL_UNIX_ADDR=/home/wwwroot/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/wwwroot/mysql/data -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DDOWNLOAD_BOOST=1 -Wno-dev


#修改/usr/local/mysql权限

chown -R mysql:mysql /home/wwwroot/mysql


#初始化配置

cd /home/wwwroot/mysql


#执行初始化配置脚本,创建系统自带的数据库和表

scripts/mysql_install_db --basedir=/home/wwwroot/mysql --datadir=/home/wwwroot/mysql/data --user=mysql


#添加服务,拷贝服务脚本到init.d目录

cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
service mysql start


#设置PATH

echo "export PATH=$PATH:/home/wwwroot/mysql/bin" >> /etc/profile



#建立软连接,不然mysql -uroot执行不了

ln -s /home/wwwroot/mysql/bin/mysql /usr/bin


#修改root密码

mysql -uroot
SET PASSWORD = PASSWORD('123456');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;



阿里云有安全组策略,一定注意要去添加端口号

关键字lnmp php mysql nginx