我有一個Laravel 5.1應用程序,它擁有許多客戶端,並擁有自己獨特的子域和數據庫。排隊的路由()網址在URL中有錯誤的域
在應用程序加載,我的中間件解決了客戶端,並設置app.url(配置/ app.php)相應。這一切都很好,在瀏覽器中。所有由route()生成的url都有當前客戶端的正確子域名。
但是,排隊的東西(在我的情況Redis的)總是默認爲「localhost」的域名URL。
所以,如果我把其中的文字模板包含路徑(「賬戶」),它會從隊列中生成一個「http://localhost/account」 URL歡迎電子郵件。這當然是不正確的。
我發現,也許這樣做,它在照亮\基金會\引導\ SetRequestForConsole類行:
$url = $app->make('config')->get('app.url', 'http://localhost'); <---
據我所看到的,我真的不能「掛鉤」到之前的任何事情。
信息:對於每一個排隊命令(關閉)我有,我總是用它發送客戶端是誰,真實queing。這樣我在排隊的命令被觸發之前設置客戶端。它加載正確的數據庫連接。但更改默認路由()服務器名稱顯得相當困難!
我已經嘗試了擴展UrlGenerator類,但現在看來,這是完全忽略了排隊的命令並且僅適用於HTTP請求。
我也嘗試添加此之前隊列命令被觸發:
app('url')->forceRootUrl($client->getClientUrl());
它沒有工作。 (但不與HTTP請求的工作)在這裏
任何人有如何設置路徑()在命令行模式下我自己的默認域的想法?
也許你可以生成鏈接,然後將它傳遞給排隊的數據,而不是調用郵件模板內的路線(「帳戶」)。 –