看板 Python 關於我們 聯絡資訊
※ 引述《redbxh (LJC)》之銘言: : Djangp Project : - / (Homepage) : - /appa/ (Appa) : - /appb/ (Appb) : www.aaa.com -> / (homepage) : appa.aaa.com -> /appa (Appa) : appb.aaa.com -> /appb (Appb) : server { : ... : server_name domain2 : ... : location / { : rewrite / /app1/ : ... : } : } : 瀏覽器輸入 domain2/ 時確實會連到 /app1 : 但是顯示的url 也跟著改回 domain2/app1/ : 有辦法讓 domain2/ = /app1/ 嗎? 我好像有點搞錯你的需求, 先確認一下 假設你現在有一個完整的網站架在 http://site.localhost, 包含下面這幾頁 http://site.localhost/app1/ http://site.localhost/app1/test/ http://site.localhost/app2/ http://site.localhost/app2/test/ 你現在想把它們變成 http://app1.site.localhost/ http://app1.site.localhost/test/ http://app2.site.localhost/ http://app2.site.localhost/test/ 是這樣嗎? 如果是的話, 可以試試直接把 nginx 直接 proxy 給自己比較快 server { ... # 大致不變 location / { # proxy_pass 到 uwsgi, 不變 } } # 把 app1.site.localhost proxy 到 127.0.0.1/app1 server { server_name app1.site.localhost; location / { proxy_pass http://127.0.0.1/app1$request_uri; } } 這樣當你訪問 http://app1.site.localhost/test/ => 進第二個 virtual server, $request_uri = /test/ => 被 proxy pass 到 http://127.0.0.1/app1/test/ => 進第一個 virtual server, $request_uri = /app1/test/ => 被 proxy pass 到 uwsgi, 後面就跟你本來的程式流程一樣 app2 也是比照辦理 如果你有需要也可以在原本的 virtual server 加幾個 rewrite 把原本 site.localhost/app1/ 的訪問重導向到 app1.site.localhost/ 這個方法的缺點是, Django app 會不知道自己用的網址其實和使用者看到的不一樣 所以如果你需要用一些基於網址的功能, 例如 site framework 就會需要額外設一些 HTTP headers 例如 X-Forwarded 系列 不過這個遇到再去找資料就行了, 資料應該不少 --
GNUGCC:void main(void) 的寫法是可行的唷^^08/10 00:59
GNUGCC:雖然這個寫法較傳統,但是語法與文法都正確哦^^08/10 02:16
GNUGCC:目前我使用的 Visual C++ 都接受 void main(void) 與 08/10 20:18
GNUGCC:int main(void),各位可以把 C++ 專案改成原生 C++ 類型來 08/10 20:19
GNUGCC:用 void main(void) 來寫發現也可通過編譯. 08/10 20:21
GNUGCC:這個就是 Visual C++ 的彈性.08/11 20:23
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.94.62 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1516869737.A.2B8.html
redbxh: 感謝 這方法可行 現在問題出現在點 app1下的link 01/25 17:57
redbxh: 會變成http://127.0.0.1/app/app/ 這種重複的 01/25 17:57
redbxh: 修一下path 應該就可以了 01/25 17:57
redbxh: 應該說直接輸入網址都沒問題 但網頁內點選就會重複app1 01/25 18:08
redbxh: 我解決了 真的十分感謝你 01/25 18:15
redbxh: 我用兩個 location 一個 = / 去處理app1 主頁 01/25 18:16
redbxh: 剩下 / 去處理 01/25 18:16