前言
最近想写一个前端vue组件开发文档,同事说为啥不配置一个子域名。我一脸懵逼
今天没事,同事帮我配置了一番,顺便把https弄了
一、子域名
- 配置域名解析
- nginx配置
server {
listen 443 ssl;
## 子域名重点,下面是SSL证书配置
server_name doc.idearyou.cn;
ssl_certificate /etc/nginx/ssl/doc.idearyou.cn.pem;
ssl_certificate_key /etc/nginx/ssl/doc.idearyou.cn.key;
gzip on;
gzip_buffers 32 4K;
gzip_comp_level 6;
gzip_min_length 100;
gzip_types application/javascript text/css text/xml;
gzip_disable "MSIE [1-6]\."; #配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版本不支持)
gzip_vary on;
location / {
root /work/vue/dist;
index index.html index.htm;
try_files $uri $uri/ /index.html;
if ($request_filename ~* .*\.js$) {
add_header Cache-Control "private, no-store, no-cache, must-revalidate, proxy-revalidate";
}
}
}
## 预防http也可以访问
server {
listen 80;
server_name doc.idearyou.cn;
rewrite ^(.*)$ https://$server_name$1 permanent;
}
二、ssl证书配置
- ssl证书申请下载(两个文件)放到服务器某个目录下
/etc/nginx/ssl/doc.idearyou.cn.pem;
/etc/nginx/ssl/doc.idearyou.cn.key;
- nginx配置
server {
#监听443,https的端口,这里不需要配置www
listen 443 ssl;
server_name www.idearyou.cn idearyou.cn;
#指定ssl文件路径
ssl_certificate /etc/nginx/ssl/www.idearyou.cn.pem;
ssl_certificate_key /etc/nginx/ssl/www.idearyou.cn.key;
client_max_body_size 1024m;
location / {
}
}
## 预防http也可以访问
server {
listen 80;
server_name www.idearyou.cn idearyou.cn;
rewrite ^(.*)$ https://$server_name$1 permanent;
}
重点: server_name后域名一定要带前缀,比如www,子域名则带子域名前缀