centos7.6
检查编译器是否安装(一般来讲,使用阿里云、腾讯云等都会提前安装好这些编译器以及软件包)
# gcc: gcc -v #如果没有则回提示 yum -y install gcc #没有则安装gcc yum install -y pcre pcre-devel #安装pcre\pcre-devel(已有则会报nothing to do) yum install -y zlib zlib-devel #安装zlib yum install -y openssl openssl-devel #安装openssl-devel
下载解压nginx
#创建文件夹 cd /usr/local mkdir nginx cd nginx #获取安装包并解压 wget http://nginx.org/download/nginx-1.13.7.tar.gz tar -xvf nginx-1.13.7.tar.gz #进入nginx安装包目录编译 cd nginx-1.13.7 ./configure make make install #打开nginx编译目录 cd /usr/local/nginx #修改配置文件 vim nginx.conf
配置文件如下(记得将原来文件中注释掉的log信息以及报错提示等前面的注释符号删掉)
# 复制到对应http里面server位置 upstream halo { server 127.0.0.1:8090; } server { listen 80; listen [::]:80; #注意:nginx 1.10.x以上才含有ipv6设置 server_name youdomain.com; client_max_body_size 1024m; location / { proxy_pass http://halo; proxy_set_header HOST $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
如含有ssl证书,则配置文件如下即可,复制位置同上
upstream halo { server 127.0.0.1:8090;//8090是初始未修改的halo博客端口号 } server { listen 80; listen [::]:80; server_name 域名 www.域名;//这里写你的域名包括加www的前缀 client_max_body_size 1024m; return 301 https://$host$request_uri; } server {//前缀为www.你的域名配置文件及ssl证书 #SSL 访问端口号为 443 listen 443 ssl; #填写绑定证书的域名 server_name www.域名; #证书文件名称 ssl_certificate 1_www.域名_bundle.crt; #私钥文件名称 ssl_certificate_key 2_www.域名.key; ssl_session_timeout 5m; #请按照以下协议配置 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM- SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { proxy_pass http://halo; proxy_set_header HOST $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } server {//你的域名配置文件及ssl证书 #SSL 访问端口号为 443 listen 443 ssl; #填写绑定证书的域名 server_name 域名; #证书文件名称 ssl_certificate 1_域名_bundle.crt; #私钥文件名称 ssl_certificate_key 2_域名.key; ssl_session_timeout 5m; #请按照以下协议配置 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { proxy_pass http://halo; proxy_set_header HOST $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
运行nginx
cd /usr/local/nginx/sbin ./nginx #无报错则运行成功
访问域名,nginx会制动代理到对应的端口