Linux部署Nginx并配置https

简介: Linux部署Nginx并配置https

1. 下载nginx安装包

wget http://nginx.org/download/nginx-1.21.6.tar.gz

2. 解压压缩包

tar -zvxf nginx-1.21.6.tar.gz

3. 初始化configure

#配置configure --prefix 代表安装的路径,--with-http_ssl_module 安装ssl,--with-http_stub_status_module查看nginx的客户端状态
./configure --prefix=/usr/local/nginx-1.20.2 --with-http_ssl_module --with-http_stub_status_module

如果缺少依赖就安装依赖包

yum -y install gcc gcc-c++ autoconf automake make
yum -y install openssl openssl-devel

4. 编译安装

#编译安装nginx
make & make install

5. 开启ssl

从阿里云下载免费ssl证书

vim /usr/local/nginx/conf/nginx.conf

在结尾处新增一行

http {
  server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            root   html;
            index  index.html index.htm index.php;
        }
  }
  #在这儿新增
  include  /usr/local/nginx/conf/vhost/*.conf;
}

新建ssl.conf配置文件,文件路径/usr/local/nginx/conf/vhost/ssl.conf

文件内容

server {
    listen 80;
    server_name 你的域名;
    rewrite ^(.*)$ https://${server_name}$1 permanent; 
}
server 
   {
        # 基于域名的虚拟主机
        listen       443 default_server ssl;
        #listen 443;
        server_name 你的域名;
        ssl_certificate      /home/nginx/ssl/证书文件.pem;
        ssl_certificate_key  /home/nginx/ssl/证书文件.key;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
}

6. nginx无法访问https

  1. 排查服务器安全组规则是否开启443端口
  2. 排查nginx是否开启443端口
netstat -anp | grep nginx
  1. 如果没有开启,就检查nginx是否安装ssl模块,以及证书位置信息
  2. 排查服务器防火墙443端口状态
firewall-cmd --zone=public --query-port=443/tcp

yes代表开启,no代表未开启

服务器开启443端口

firewall-cmd --zone=public --add-port=443/tcp --permanent
  1. 重启防火墙使其生效
firewall-cmd --reload
• 1

7. 常用命令

启动nginx

/usr/local/nginx/sbin/nginx

关闭nginx

pkill -9 nginx

重启nginx,重新加载配置文件

/usr/local/nginx/sbin/nginx -s reload

校验nginx配置文件

/usr/local/nginx/sbin/nginx -t

查看nginx进程

ps -ef|grep nginx

查看nginx端口

netstat -anp | grep nginx


目录
相关文章
|
3天前
|
安全 应用服务中间件 网络安全
49.3k star,本地 SSL 证书生成神器,轻松解决 HTTPS 配置痛点
mkcert是一款由Filippo Valsorda开发的免费开源工具,专为生成受信任的本地SSL/TLS证书而设计。它通过简单的命令自动生成并安装本地信任的证书,使本地环境中的HTTPS配置变得轻松无比。mkcert支持多个操作系统,已获得49.2K的GitHub Star,成为开发者首选的本地SSL工具。
|
5天前
|
Web App开发 算法 应用服务中间件
nginx开启局域网https访问
【10月更文挑战第22天】为了调试WebRTC功能,需要在局域网内搭建HTTPS协议。具体步骤包括:在已部署Nginx和安装OpenSSL的环境中生成私钥、证书签名请求和自签名证书;将生成的文件放置到Nginx的证书目录并修改Nginx配置文件,最后重启Nginx服务。注意,自签名证书不受第三方机构认可,如需正式使用,需向CA申请签名。
|
1月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
1月前
|
Docker 容器
docker nginx-proxy 添加自定义https网站
docker nginx-proxy 添加自定义https网站
32 4
|
1月前
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站
|
1月前
|
JavaScript 应用服务中间件 nginx
nginx部署vue项目
本文介绍了将Vue项目部署到Nginx的步骤,包括构建Vue项目、上传dist文件夹到服务器、安装Nginx、配置Nginx代理静态文件以及重启Nginx,确保了Vue应用可以通过域名或IP地址访问。
92 1
|
1月前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
183 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
28天前
|
监控 应用服务中间件 网络安全
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
101 0
|
5天前
|
缓存 监控 Linux
|
9天前
|
Linux Shell 数据安全/隐私保护
下一篇
无影云桌面