[英]Define base url for laravel application
我客戶端的應用程序暫時在我的登台服務器( my-domain.com
)上運行,而在他的服務器( client-domain.com
)上,我放置了一個.htaccess
文件以將所有請求重定向到我的登台服務器。 到目前為止,除了使用Laravel的幫助程序構建URL之外,此方法都可以正常工作。
例如,當我調用{{ action( 'Controller@getIndex' }}
,Laravel返回my-domain.com/index
(而不是所需的client-domain.com/index
)。
現在,我通過將這些調用替換為絕對的,硬編碼的URL來解決了此問題,但這困擾了我的工作流程。
因此,有沒有辦法強迫Laravel使用特定的基本網址?
Laravel為運行它的當前域生成URL。 目前,laravel在my-domain.com上運行,即使您使用client-domain.com進行調用。 當然這取決於您如何重定向。
因此,首先,為什么要將客戶端域重定向到服務器。
如果這是永久重定向,那么最好執行以下操作:
如果僅用於測試/調試(或其他),並且當您進入生產階段時此重定向將消失,則不必擔心:
附帶說明一下,實際上不建議通過多個URL訪問相同的內容。 因此,您必須301將一個域重定向到另一個域(似乎是當前行為),然后僅使用其中一個。
編輯:並回答您最后一個問題,沒有辦法在laravel中設置基本URL(至少現在是這樣)。 github上似乎有個問題(在這里: https : //github.com/laravel/framework/issues/92 )。 也許您可以朝這個方向進行調查,但是我認為不會一天實現,因為在任何常規的Web應用程序中這似乎都是很棘手的事情,而且很少見。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.