目录
服务器信息:CentOS Linux release 7.4.1708 (cat /etc/redhat-release查看版本)
安装Nginx
安装基础依赖
PCRE
(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库
yum install -y pcre pcre-devel
zlib
库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
gcc
和openssl
也是必须的,如果已安装可忽略
yum install gcc-c++
yum install -y openssl openssl-devel
下载nginx并编译安装
- cd /usr/local
- wget -c https://nginx.org/download/nginx-1.14.0.tar.gz
- tar -zxvf nginx-1.14.0.tar.gz
- cd nginx-1.14.0
- ./configure
- make
- make install
配置环境变量
按照如上步骤安装完nginx后,会生成/usr/local/nginx 目录
在/etc/profile文件末尾追加如下信息使其永久性生效,并对所有系统用户生效
NGINX_HOME=/usr/local/nginx/
PATH=$PATH:$NGINX_HOME/sbin
export PATH
执行如下命令使环境变量生效
source /etc/profile
配置开机启动
开机启动配置方法
- vi /etc/rc.local
在此文件末尾另起一行追加 /usr/local/nginx/sbin/nginx
chmod 755 rc.local #设置文件可执行权限
nginx常用命令
nginx -s reload
#修改配置后重新加载生效
nginx -s reopen
#重新打开日志文件
nginx -t -c /path/to/nginx.conf
#测试nginx配置文件是否正确
关闭nginx相关
nginx -s stop
#快速停止nginx
nginx quit
#完整有序的停止nginx
启动nginx
nginx -c /usr/local/nginx/conf/nginx.conf
Nginx配置微服务网关
实现目标:通过访问指定域名来访问SpringCloud微服务的网关服务来实现对整个项目入口的分发。预备信息如下
二级域名:
qbmall.hdlxdl.site
转发端口:8504
域名解析:阿里云
网关技术:zuul
配置二级域名的解析
通过阿里云服务域名-域名解析功能添加域名解析如下图所示,记录值填写自己服务的ip地址。目标是通过配置的主机记录来访问我们的微服务的8504端口指定的网关服务
配置nginx实现端口转发
添加如下配置,大图的意思就是所有访问qbmall.hdlxdl.site地址的请求全部转发到127.0.0.1:8504
端口服务上,而8504端口对应的服务就是我们下面要部署的网关的服务
http{
upstream qbmall_pool{
server 127.0.0.1:8504;
}
server{
server {
listen 80;
server_name qbmall.hdlxdl.site;
access_log logs/qbmall.log;
error_log logs/qbmall.error;