10分钟nginx配置https,运行一个自己的网站

本文档详细介绍了如何在已有腾讯云服务器上配置Nginx,包括安装Nginx、设置SSL证书、修改配置文件以启用HTTPS,并通过systemd管理Nginx服务。最后,将网站前端代码部署至Nginx服务器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前置条件:

1.已有云服务器,我用过的腾讯云服务器

2.域名已经购买,并且已经完成备案,

3.ssl证书已申请,我是在腾讯云申请的

步骤

1.

wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0.tar.gz

 yum -y install pcre pcre-devel zlib zlib-devel
yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

cd nginx-1.18.0/
# ssl需要
./configure --prefix=/usr/local/nginx --with-http_ssl_module

# 非ssl
./configure --prefix=/usr/local/nginx 
 make && make install

/usr/local/nginx/sbin/nginx  -v
#检查有ssl


# ssl需要,非ssl不需要
 cd /usr/local/nginx
 mkdir cert
cp ~/nineming/myssl.key /usr/local/nginx/cert/
 cp ~/nineming/myssl.pem /usr/local/nginx/cert/


PATH=$PATH:/usr/local/nginx/sbin/
 firewall-cmd --add-port=443/tcp
 firewall-cmd --add-port=80/tcp

编辑nginx配置(https需要,否则就用默认的即可)

vi /usr/local/nginx/conf/nginx.conf

worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

server {
    listen       80;
    server_name  nineming.cn;
    return 301 https://$server_name$request_uri;
}
server {
    # 服务器端口使用443,开启ssl, 这里ssl就是上面安装的ssl模块
    listen       443 ssl;
    # 域名,多个以空格分开
    server_name  nineming.cn;

    # ssl证书地址
    ssl_certificate     /usr/local/nginx/cert/nineming.cn.pem;  # pem文件的路径
    ssl_certificate_key  /usr/local/nginx/cert/nineming.cn.key; # key文件的路径

    # ssl验证相关配置
    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;    #安全链接可选的加密协议
    ssl_prefer_server_ciphers on;   #使用服务器端的首选算法

    location / {
        root   html;
        index  index.html index.htm;
    }
}

}

编辑systemctl管理

vi  /usr/lib/systemd/system/nginx.service

[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target

载入配置与管理nginx

 systemctl daemon-reload

 systemctl  status nginx

 systemctl  stop nginx

 systemctl  start nginx

最后,再将自己网站的前端文件,拷贝到nginx的目录下,删除html目录,并重命名自己的文件夹为html,搞定

rm -rf /usr/local/nginx/html
cp 自己官网前端代码文件夹  /usr/local/nginx/html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值