我有一個項目必須通過這兩個網址us_myproject.com
和es_myproject.com
訪問。Laravel 5 - 如何爲同一個laravel項目設置多個數據庫憑證(如果可能的話)?
他們共享相同的文件夾和代碼。實際上,只有一個laravel項目:htdocs/myproject
。
根據URL信息必須來自us_db
或es_db
,基於所使用的URL。
所以我的問題是如何設置.env
數據庫憑據指向這兩個不同的數據庫。我有2個不同的數據庫,2個不同的用戶和2個不同的密碼。我怎樣才能完成這項任務?
我有這樣的跟蹤代碼的工作原理:
URL: us_myproject.com/dbtest
.env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=us_db
DB_USERNAME=root
DB_PASSWORD=''
Route::get('dbtest',function(){//Works good
$tblusertypes=DB::table("tblusertypes")->get();
return $tblusertypes;
});
如果我做URL: es_myproject.com/dbtest
應查詢對es_db
但我不知道如何設置。任何想法?
嗨,我看到你做了什麼。因此,您的想法是根據HTTP_HOST更改陣列內容 - 憑證。這是一個很好的選擇。但它提出了一個問題。這個改變將在SESSION結束之前可用,我的意思是讓用戶可以訪問主頁,Session將被設置爲一個特定的環境,在這種情況下,西班牙(es),然後他會去到另一頁,並嘗試插入一些sturff。環境已經坐了? – zwitterion
我認爲這與SESSION沒有任何關係。這只是您用於特定主機的數據庫的問題。當他們隨時切換到另一臺主機時,憑證將被切換。 – Naveed