亚洲天堂伊人网丨午夜精品久久久久久99热明星丨日韩卡1卡2卡三卡免费网站丨亚洲春色综合另类网蜜桃丨成人在线播放av丨无码免费无线观看在线视频丨少妇富婆高级按摩出水高潮丨日日av拍夜夜添久久免费丨久久久亚洲精品一区二区三区丨欧美日韩成人丨国产调教av丨国产熟妇按摩3p高潮大叫丨亚洲精品国产精品乱码不99按摩丨青青青视频在线丨亚洲欧美中文字幕日韩一区二区

科技信息數碼
Nginx二級域名綁定二級目錄設置方法
2023-06-16 13:35  瀏覽:559
一個客戶用的是阿里云虛擬主機,想把二級域名綁定到二級目錄訪問,眾所周知虛擬主機雖然能綁定多個域名,但是只能指定一個根目錄,也就是所有域名的訪問都是指向到根目錄。
 
一共是開發了PC端、WAP端、管理端三個段,都要部署上去,用的vue-cli開發,路由是 domain/page 形式的 (非domain/#/pages),這對虛擬主機的支持非常不好,因為除了PC端,其他端都只能放二級目錄中,這樣的話就只能通過二級域名,利用nginx代理到二級目錄
 
于是在各種搜索引擎的強力加持下,結合自己的理解,嘗試了幾個小時終于成功了,直接放配置
 
location / {
    if ($host = "wap.xxx.cn") {
        rewrite ^/(.*)$ /wap/$1 last;
    }
 
    if ($host = "admin.xxx.cn") {
        rewrite ^/(.*)$ /admin/$1 last;
    }
 
    if (!-e $request_filename) {
        rewrite ^/(.*)$  /index.php/$1  last;
    }
}
 
location /wap {
    if (!-e $request_filename) {
        rewrite ^/(.*)$  /wap/index.php  last;
        break;
    }
}
 
location /admin {
    if (!-e $request_filename) {
        rewrite ^/(.*)$  /admin/index.php  last;
        break;
    }
}
劃重點:不知道為什么這樣設置后,index index.html index.php 不起作用了,它只找index.php,否則404,所以我就吧index.html 改名為 index.php
剖析
首先是二級域名代理到二級目錄
 
    if ($host = "admin.xxx.cn") {
        rewrite ^/(.*)$ /admin/$1 last;
    }
 
避坑:如果只寫這個,會重寫死循環,需要把last改為break
 
當寫好上面的代理后,能正常訪問靜態文件,但是由于我們的前端是 domain/pages 這種格式的,刷新頁面后直接訪問到/index.php,所以要在底下增加對應目錄的重寫配置。
發表評論
0評