目录
一、Nginx安装部署
1.安装包下载
2.下载相关依赖工具
3. 创建运行用户
4.编译安装
5.优化路径
6.将nginx添加至系统服务
7.文件赋权
二、MySQL部署安装
1.解压
2.安装相关工具
3.创建运行用户
4.编译安装
5.修改配置文件
6.更改mysql安装目录和配置文件的属主属组
7.设置环境变量
8.初始化数据库
9. 添加mysqld系统服务
10.设置 mysql登陆密码
11. 登录
三、PHP安装部署
1.下载安装包
2.安装相关依赖包工具等
3.编译
4.修改配置文件
5.配置Nginx 支持php
本篇为纯安装教程
在部署之前,需要对系统进行一些必要的操作,关闭防火墙、关闭增强功能等,L和LAMP一样是Linux操作系统,我们默认在Linux操作系统上进行
一、Nginx安装部署
1.安装包下载
进入Nginx官网,找到需要安装的版本,复制链接或者下载到本机然后上传至服务端
如果选择链接下载,输入命令
wegt https://nginx.org/download/nginx-1.12.2.tar.gz
2.下载相关依赖工具
yum -y install pcre-devel zlib-devel gcc gcc-c++ make
3. 创建运行用户
useradd -M -s /sbin/nologin nginx
4.编译安装
cd /下载安装包的目录(我这里是放在了/opt下)
解压刚才下载的压缩包
tar zxvf nginx-1.12.2.tar.gz (我的版本与你的或许不一致,直接打一个ng然后补全就好)
进入到解压后的目录
进行编译
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
完成后 make && make install
5.优化路径
设置一个软链接,方便系统识别
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
6.将nginx添加至系统服务
vim /lib/systemd/system/nginx.service
输入如下内容:
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
7.文件赋权
chmod 754 /lib/systemd/system/nginx.service
都完成后我们可以nginx -t 查看有无语法错误
一个ok 一个successful ,成功了,现在可以启动服务了
systemctl start nginx.service
systemctl enable nginx.service
如果启动不成功可以看看80 端口是否被 httpd 占用了
我就遇到过这种情况,直接关闭httpd服务
Nginx部署安装成功了
二、MySQL部署安装
和nginx部署安装一样,先下载安装包,mysql官网可能有点复杂,可以看我之前的一篇博客,虽然是讲的LAMP部署,但包含了MySQL:
https://blog.csdn.net/qq_59677536/article/details/141129859?spm=1001.2014.3001.5501
我这里还是直接用我之前用的版本压缩包了 mysql-5.7.20.tar.gz
如果有什么问题或者需要我发送压缩包的请私信我,
1.解压
老样子,还是先解压缩
tar zxvf mysql—5.7.20.tar.gz
2.安装相关工具
yum -y install ncurses ncurses-devel bison cmake
3.创建运行用户
useradd -M -s /sbin/nologin mysql
4.编译安装
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1
完成后
make && make install
这个过程需要一些时间,如果服务器内存大、处理器核数多的话,需要的时间会相应短一些
完成
5.修改配置文件
vim /etc/my.cnf
[client]
port = 3306
socket=/usr/local/mysql/mysql.sock
清空内容并输入如下内容:
[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
6.更改mysql安装目录和配置文件的属主属组
chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf
7.设置环境变量
echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
source /etc/profile
8.初始化数据库
去到 /usr/local/mysql/bin 目录下
输入如下内容
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
9. 添加mysqld系统服务
讲 /usr local/mysql/usr/lib/systemcd/system/mysqld.service 文件复制到
/usr/lib/systemd/system/ 目录下
systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqld
10.设置 mysql登陆密码
mysqladmin -u root -p password "123123" (abc123是我自己设置的,可以根据自己的需求设置)
注意:输入mysqladmin -u root -p password "123123" 后,出现Enter password,不要输入密码,在按依次回车就可以了
11. 登录
mysql -u root -p
输入密码
Show databases;
出现如图所示,数据库安装完成
三、PHP安装部署
1.下载安装包
同样的去官网下载,我的LAMP 博客中也有下载的地址和方法
LAMP部署-CSDN博客
解压缩
tar zxvf php-7.1.24.tar.gz
2.安装相关依赖包工具等
yum -y install gd libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
3.编译
安装相关软件完成后,同样的我们进入解压后的文件目录,进行编译
./configure \
--prefix=/usr/local/php7 \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-config-file-path=/usr/local/php7 \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer
编译完成后
make && make install
顺便做一个路径优化,方便系统识别
ln -s /usr/local/php/bin/* /usr/local/bin/
ln -s /usr/local/php/sbin/* /usr/local/sbin/
4.修改配置文件
cp /opt/php-7.1.24/php.ini-development /usr/local/php/lib/php.ini 复制文件模板
vim /usr/local/php/lib/php.ini
--939行左右,取消注释并修改
date.timezone = Asia/Shanghai
--1170行左右
mysqli.default_socket = /usr/local/mysql/mysql.sock
保存并退出
接下来调整进程服务配置文件
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
vim /php-fpm.conf
去掉17行注释
将扩展配置文件稍作调整
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf
启动php-fpm
/usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini
查看端口
netstat -anpt | grep 9000
启动成功
5.配置Nginx 支持php
到此php安装配置基本上就结束了,但是还没有算是完全部署成功,我们需要让我们的Nginx支持php
cd /opt/php-7.1.10/sapi/fpm
cp php-fpm.service /usr/lib/systemd/system/php-fpm.service
systemctl restart php-fpm.service
vim /usr/local/nginx/conf/nginx.conf
65行,取消注释,修改
将 /scripts 修改为nginx的工作目录
保存退出
重启Nginx 服务
创建php测试页面
vim /usr/local/nginx/html/index.php
phpinfo();
?>
浏览器输入 ip /index.php
LNMP搭建完成