# 更新软件包
sudo apt update
# 安装Nginx
sudo apt install -y nginx
sudo nginx -v
Nginx防止中乱码
server{
...
listen 8088 default_server;
listen [::]:8088 default_server;
charset utf-8; #设置字符集为 utf-8
}
根据维基百科的解释:
HTTPS,英语:Hypertext Transfer Protocol Secure)超文本传输安全协议
,
用以提供加密通讯及对网络服务器身份的鉴定
一、升级 OpenSSL
# 更新源
sudo apt-get update
# 安装openssl依赖库
sudo apt-get install openssl
# 查看安装好的openssl版本号
openssl version
二、去购买域名的地方 或者 腾讯云
、阿里云
等等地方去申请ssl证书 (申请免费的即可,土豪请随意)
三、找一个目录存放nginx的证书文件(一般为两个)
# 在nginx配置目录里创建一个 ssl目录
mkdir /etc/nginx/ssl
mkdir /etc/nginx/ssl/private #存放两个ssl证书
mkdir /etc/nginx/ssl/certs # 存放openssl生成的dhparam.pem
四、修改Nginx的配置文件
# 使用apt命令安装的Nginx配置文件一般就在这里
vi /etc/nginx/sites-enabled/default
server {
listen 443 ssl;
listen [::]:443 ssl ipv6only=on;
# 这里输入你证书绑定的域名 www解析和 @ 解析 中间以空格隔开
# www.yuweb.cf
# yuweb.cf
server_name www.yuweb.cf yuweb.cf;
ssl on;
# 这里输入你证书的存放路径
ssl_certificate /etc/ssl/private/example_com.pem;
ssl_certificate_key /etc/ssl/private/example_com.key;
}
五、增加安全性(可选)
cd /etc/nginx/ssl/certs
openssl dhparam -out dhparam.pem 2048
可选加密位数 根据机器性能来 位数越高越安全 生成时间也越长
1024
2048
4096
生成完毕后,在 Nginx 的 SSL 配置后面加入 就是 server代码块中
server {
listen 443 ssl;
listen [::]:443 ssl ipv6only=on;
# 这里输入你证书绑定的域名 www解析和 @ 解析 中间以空格隔开
# www.yuweb.cf
# yuweb.cf
server_name www.yuweb.cf yuweb.cf;
ssl on;
# 这里输入你证书的存放路径
ssl_certificate /etc/ssl/private/example_com.pem;
ssl_certificate_key /etc/ssl/private/example_com.key;
ssl_prefer_server_ciphers on;
# 你的dhparam.pem文件所在位置
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";
keepalive_timeout 70;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.4.4 8.8.8.8 valid=300s;
resolver_timeout 10s;
add_header Strict-Transport-Security max-age=63072000;
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
}
六、添加 访问80端口转发到443端口的配置
server {
listen 80;
listen [::]:80;
# 主机名 输入你的域名
server_name yufire.cf www.yufire.cf;
# 转发到你的 https端口 请输入你的域名
return 301 https://www.yufire.cf$request_uri;
}
nginx -t
nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored
nginx -s reload
Nginx常用命令
命令 | 作用 |
---|---|
service nginx start | 开启Nginx服务 |
service nginx stop | 停止Nginx服务 |
service nginx restart | 重启Nginx服务 |
nginx -s reload | 重新加载Nginx配置文件 |
nginx -v | 查看 Nginx的版本号 |
nginx -s stop | 停止 nginx |
nginx -s quit | 退出 nginx |
nginx -t | 检查配置文件是否正确 |