云服务器部署lnmp以及iwebshop项目部署
一.准备一台云服务器
二.安装nginx可以使用yum安装或者rpm包进行安装
1.使用rpm包进行安装nginx
nginx官网找到合适的版本进行下载然后传输到服务器或者使用wget
wget http://nginx.org/download/nginx-1.24.0.tar.gz
2.进行解压和初始化
tar -zxvf nginx-1.24.0.tar.gz
#初始化
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
#编译
make
make install
编译完可以看到makefile文件
3.安装依赖
#安装依赖
yum -y install gcc gcc-c++ pcre pcre-devel openssl openssl-devel zlib zlib-devel
4.关闭防火墙和selinux
systemctl stop firewalld.service
sed -i '7s#enforcing#disabled#g' /etc/selinux/config
5.配置systemd启动nginx
vim /etc/systemd/system/nginx.service
[Unit]
Description=Nginx Web Server
After=network.target
[Service]
Type=forking
PIDFile=/var/run/nginx/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
#启动nginx
systemctl start nginx.service
6.默认情况下nginx启动是开启80端口所以需要在云服务器的安全组里将80端口开放再访问浏览器测试
三.安装部署数据库
1.MySQL官方找到合适版本进行下载到app目录下进行安装
#创建软链接
ln -s mysql-5.7.20-linux-glibc2.12-x86_64 mysql
#设置环境变量在文件最后
vim /etc/profile
export PATH=/app/mysql/bin:$PATH
#创建用户和组
[useradd mysql
#重新启动配置文件
source /etc/profile
#创建目录
mkdir -p /data/mysql
chown -R mysql.mysql /app/*
chown -R mysql.mysql /data/*
2.初始化MySQL
#初始化
mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/data/mysql
3.检查mariadb是否删除干净
cat /etc/my.cnf #有内容说明mariadb没有删干净
#删除mariadb
yum remove -y `rpm -aq mariadb*`
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql
[root@cloud1 mysql]# vim /etc/mysql.cnf
[root@cloud1 mysql]# cat /etc/mysql.cnf
[mysqld]
user=mysql
basedir=/app/mysql
datadir=/data/mysql
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
prompt=3306 [\\d]>
4.配置systemd服务启动MySQL
#使用systemd开启MySQL
[root@cloud1 system]# vim mysql.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/app/mysql/bin/mysqld --defaults-file=/etc/mysql.cnf
LimitNOFILE = 5000
5.修改配置
[root@cloud1 etc]# vim mysql.cnf
#在mysqld下添加(跳过密码认证)
skip-grant-tables
#进入MySQL后修改密码
mysql> update mysql.user set authentication_string=PASSWORD("1") where User="root";
#再删除skip-grant-tables配置
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
#需要再次更改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123' ;
#测试
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
四.安装php
1.yum安装PHP
yum -y install php php-mysql php-fpm
2.修改配置文件
vim /etc/php.ini
3.启动服务
systemctl start php-fpm.service
五.配置nginx支持PHP解析
将nginx配置文件中的注释取消掉并作修改
测试配置文件是否出错
[root@cloud1 conf]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
修改php-fpm 文件 的www.conf
重启服务
systemctl restart nginx.service
测试使用浏览器访问ip/index.php,出现如下图即表示成功
六.部署iwebshop
#解压
tar -zxvf iwebshop-v5.13.tar.gz
mv iwebshop-v5.13/ iwebshop
mv iwebshop/ /usr/local/nginx/html/
通过IP/iwebshop/index.php访问