安全运维-Nginx
1.1.在线安装
在银河麒麟操作系统上安装 Nginx 有多种方式,最常见的是通过包管理器 yum
进行安装。这种方式简单快捷,适合大多数用户。
在安装之前,建议先更新系统的软件包列表,以确保安装的软件包是最新版本:
sudo yum update
注意:这里更新的软件包较多,时间较长。
使用以下命令安装 Nginx
:
sudo yum install -y nginx
安装完成后,启动 Nginx
服务:
# 为了确保 Nginx 在系统启动时自动运行,可以设置开机自启
sudo systemctl enable nginx
# 启动 Nginx 服务
sudo systemctl start nginx
sudo systemctl status nginx
将nginx默认访问端口80进入到防火墙中。
firewall-cmd --zone=public --add-port=80/tcp --permanent &&
firewall-cmd --reload &&
firewall-cmd --list-port
打开浏览器,访问服务器的 IP
地址,如果看到 Nginx
的默认欢迎页面,则说明安装成功。
1.2.源码编译安装
如果需要自定义配置或安装特定版本的 Nginx
,可以使用源码编译的方式。
在编译 Nginx
之前,需要安装一些必要的编译工具和库:
sudo yum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel
从 Nginx
官方网站下载源码包:
wget http://nginx.org/download/nginx-1.26.2.tar.gz
解压下载的源码包:
# 解压nginx
tar -zxvf nginx-1.26.2.tar.gz
# 进入nginx目录
cd nginx-1.26.2
使用 ./configure
命令配置 Nginx
的编译选项。例如,启用 SSL
支持和状态模块:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module
编译并安装 Nginx
:
make && make install
启动 Nginx
服务:
/usr/local/nginx/sbin/nginx
打开浏览器,访问服务器的 IP
地址,如果看到 Nginx
的默认欢迎页面,则说明安装成功。
2.项目部署
2.1.动静分离
将SPA
项目压缩并上传到/usr/nginx/html
目录,再解压。
# 创建目录
mkdir -p /usr/nginx/html
# 切换目录
cd /usr/nginx/html
# 上传SPA项目
rz dist.zip
# 解压
unzip dist.zip
修改nginx
核心配置文件/etc/nginx/nginx.conf
。
# 编辑conf.d文件
vim /etc/nginx/nginx.conf
并添加SPA项目访问映射规则。
root /usr/nginx/html;location / {#该句代码是为解决history路由不能跳转的问题,在vue-router官网有介绍 try_files $uri $uri/ /index.html;
}
最后,重启nginx服务并访问SPA项目。
# 重启nginx服务
systemctl restart nginx
2.2.反向代理
修改nginx核心配置文件/etc/nginx/nginx.conf
,配置nginx反向代理。
server {listen 80;server_name www.zking.com;#charset koi8-r;#access_log logs/host.access.log main;location ^~ /edu/ {proxy_pass http://127.0.0.1:8080/;}
}
proxy_pass说明是动态请求,需要进行转发,比如代理到Tomcat上。
切记,可以实时监控 nginx
日志来查看运行情况。
# 切换到nginx的日志目录
cd /var/log/nginx/
# 查看日志信息
tail -f error.log