1.安装准备
首先安装一些基础的组件,如果想查看是否安装,使用命令
rpm -qa 组件名字,如 rpm -qa wget
基础的组件安装:
yum -y install gcc gcc-c++ wget pcre pcre-devel zlib zlib-devel unzip zip openssl openssl-devel ctl autoconf
2. nginx 安装
1.先下载文件到下载目录,
cd /usr/local/src
wget http://nginx.org/download/nginx-1.12.2.tar.gz
tar -zxvf nginx-1.12.2.tar.gz
cd nginx-1.12.2
进行编译的配置
./configure --prefix=/usr/local/nginx
安装
make && make install
如果想先测试,就按下面来操作
make
make test
make install
配置nginx开机启动
在/etc/rc.d/rc.local文件最后增加一行脚本
vim /etc/rc.d/rc.local
加入一行脚本
/usr/local/nginx/sbin/nginx
其实就是nginx的启动入口。
为了方便启动nginx,将启动目录加入环境变量,
vi /etc/profile
插入一行nginx的启动入口
export PATH="$PATH:/usr/local/nginx/sbin"
如图,
更新文件生效,
source /etc/profile
现在还没有启动nginx,启动nginx可以使用
nginx -s reload
查看nginx是否启动,
ps -ef | grep nginx
出现下图显示就是启动成功了
或者查看端口:
netstat -lntup | grep 80
出现下图结果也是启动成功了。
停止nginx
nginx -s stop
如果重启nginx不成功,产生nginx: [error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory)
错误,那就执行下:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
在重新重启就可以了。
nginx的配置就放到PHP安装完成了再来。
3.MYSQL 5.6的安装
1.首先安装cmake,mysql 5.5 之后要cmake编译安装。
cd /usr/local/src
wget http://www.cmake.org/files/v2.8/cmake-2.8.12.1.tar.gz
tar -xf cmake-2.8.12.1.tar.gz
cd cmake-2.8.12.1
./configure
make && make install
2.然后进行mysql的安装
wget http://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.21.tar.gz
tar -zxvf mysql-5.6.21.tar.gz
cd mysql-5.6.21
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
make && make install
安装完成后,配置mysql.
创建mysql的用户组和用户
groupadd mysql
useradd -g -M mysql -s /sbin/nologin mysql
赋予权限
chown -R mysql:mysql /usr/local/mysql
基础的配置:
cd /usr/local/mysql/scripts
./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
修改配置文件:
cd /usr/local/mysql
cp support-files/my-default.cnf /etc/my.cnf
将mysql添加到服务:
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
然后就可通过服务的方式启动、停止、重启mysql了:
service mysqld start
service mysqld stop
service mysqld restart
将mysql添加的环境变量,方法同上:
然后就可通过命令行方式登录了:
mysql -uroot -p
首次登录不需要密码,直接enter就可以了,mysql的操作就不叙述了。
4.安装PHP7
1.首先安装一些php的依赖:
yum -y install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel
- 编译安装PHP7:
wget http://ca1.php.net/distributions/php-7.2.11.tar.gz
tar -zxvf php-7.2.11.tar.gz
cd php-7.2.11
./configure --prefix=/usr/local/php --disable-fileinfo --enable-fpm --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-openssl --with-zlib --with-curl --enable-ftp --with-gd --with-xmlrpc --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-mbstring --enable-zip --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql-sock=/var/lib/mysql/mysql.sock --without-pear --enable-bcmath
make && make install
如果出现make: *** [Zend/zend_execute.lo] Error 1 ,基本上是内存不足的原因,因为编译zend_execute需要比较多的内存, 关掉其他占用内存的进程,在重新安装。
make clean && make
make install
3.安装好后进行配置,
将php包解压目录中的配置文件放置到正确位置(configure命令中的–with-config-file-path设置的位置)
cp php.ini-development /etc/php.ini
再处理php-fpm进程,
到php-fpm的安装目录etc下复制一份配置文件
cd /usr/local/php
cp etc/php-fpm.conf.default etc/php-fpm.conf
创建账号:
groupadd www
useradd -M -g www -s /sbin/nologin www
修改配置:
cd /usr/local/php/etc
vim php-fpm.conf
发现搜索不到“user”(设置运行账号的位置),但发现文件的最后一行:
include=/usr/local/php/etc/php-fpm.d/*.conf
因此编辑另一个文件:
cd php-fpm.d
ll
发现还没有.conf的文件,但有一个默认文件:
cp www.conf.default www.conf
vim www.conf
将文件内的修改如下:
user=www
group=www
将php-fpm加入服务管理,
cp /usr/local/src/php-7.2.11/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
chkconfig php-fpm on
同样可通过服务的方式管理php-fpm进程了,
service php-fpm start
service php-fpm stop
service php-fpm restart
建立一个项目目录
mkdir /home/www
添加一个PHP文件
touch phpinfo.php
写入内容:
<?php
phpinfo();
然后访问这个文件,还不能解析,因此还有回头配置nginx。
vim /usr/local/nginx/conf/nginx.conf
在location下要添加支持php,如
在index里面加上index.php;
然后 location ~.php 的配置项是注释的,需要全部开启:
location ~ \.php$ {
root /home/www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
主要修改 root 和fastcgi_param,root 就是项目的目录路,重启nginx,可以正常访问了。
至此LNMP环境就搭好了,只需要上传代码测试了。
5.安装redis扩展
因为常用redis,顺便记下redis扩展的安装。
- redis服务安装:
cd /usr/local/ src
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make && make install
然后进行配置:
cd src
cp redis-server /usr/local/bin/
cp redis-cli /usr/local/bin/
mkdir /etc/redis
mkdir /var/redis
mkdir /var/redis/log
mkdir /var/redis/run
mkdir /var/redis/6379
cp redis.conf /etc/redis/6379.conf
vim /etc/redis/6379.conf
修改配置文件:
daemonize yes
pidfile /var/redis/run/redis_6379.pid
logfile /var/redis/log/redis_6379.log
dir /var/redis/6379
将redis加入服务:
cd /usr/local/ src/redis-stable
cp utils/redis_init_script /etc/init.d/redis
chkconfig --add redis
chkconfig redis on
service redis start
redis就安装并启动完成。
- 安装PHP扩展
cd /usr/local/ src
wget https://codeload.github.com/phpredis/phpredis/zip/develop -O phpredis.zip
unzip phpredis.zip
cd /phpredis-develop
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
编辑php.ini,
vim /usr/local/php/etc/php.ini
添加一行
extension=redis.so
重启php-fpm,
service php-fpm restart
redis扩展安装成功。