某站点 abc.com:8080
,下有两个子站点。子站点首页在物理机上的绝对路径分别为:
- /var/www/html/siteA/page/index.html
- /var/www/html/siteB/view/login.html
希望通过 abc.com:8080/siteA
和 abc.com:8080/siteB
的地址跳转到对应的子站点首页。
同时,希望访问 http://abc.com:8080/xxx
时,强制跳转同端口的 https 。
server {
listen 8080 ssl;
server_name abc.com;
ssl_certificate /nginx/cert.pem;
ssl_certificate_key /nginx/key.pem;
#同端口强制https
error_page 497 https://$host:$server_port$uri$is_args$args;
#重写uri
location / {
alias /var/www/html/;
try_files $uri @rewriteuri;
}
location @rewriteuri {
rewrite ^/siteA/?$ /siteA/page/index.html permanent;
rewrite ^/siteB/?$ /siteB/view/login.html permanent;
}
}