vue開發使用history模式的時候Nginx相關的配置有如下兩種:
1.此種配置直接使用的根域名,沒有其他的二級路徑,因此root直接指向目標文件夾,即包含index.html的文件夾路徑
server {
listen 80;
listen 443 ssl;
server_name manager-qa.xxx.com;
ssl_certificate /etc/nginx/ssl/2319844__xxx.com.pem;
ssl_certificate_key /etc/nginx/ssl/2319844__xxx.com.key;
root /usr/share/nginx/;
#從系統時間中正則匹配出年月日
if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})") {
set $date $1$2$3;
}
# 日期記錄日志
access_log /var/log/nginx/$date-manager-qa.xxx.com.access.log;
location / {
root /usr/share/nginx/manager/qa/dist/;
try_files $uri $uri/ /index.html;
index index.html;
add_header Access-Control-Allow-Origin *;
}
}
2.此種配置適合同一域名下的多個項目,用二級路徑來區別,不過root不再指向項目文件夾而是它的上一級
server {
listen 80;
listen 443 ssl;
server_name m-qa.xxx.com;
ssl_certificate /etc/nginx/ssl/2319844__xxx.com.pem;
ssl_certificate_key /etc/nginx/ssl/2319844__xxx.com.key;
root /usr/share/nginx/;
#從系統時間中正則匹配出年月日
if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})") {
set $date $1$2$3;
}
# 日期記錄日志
access_log /var/log/nginx/$date-manager-qa.xxx.com.access.log;
location /course {
try_files $uri $uri/ /course/index.html;
root /usr/share/nginx/qa/;
index index.html;
}
location /v2 {
try_files $uri $uri/ /v2/index.html;
root /usr/share/nginx/qa/;
index index.html;
}
}