中央論壇 - CENTER BBS
標題:
[PHP][Yii2] 子目錄部屬架構 - 設定 $request->baseUrl 修正Url與PrettyUrl
[打印本頁]
作者:
死神
時間:
2016-1-22 11:52
標題:
[PHP][Yii2] 子目錄部屬架構 - 設定 $request->baseUrl 修正Url與PrettyUrl
Yii2部屬上,如果不是在Domain根目錄,要部屬Yii2恐造成Base Url錯亂及PrettyUrl後的Route吃不進Yii。
例如,在Nginx location目錄名與實體uri(Sub document root in location)不一樣下,預設的Yii其Base Url會以uri為主而非Nginx location目錄名,另外PrettyUrl因為無法正確比對REQUEST_URI導致Route無法解析。
# 基本影響層級,Url可能是取自DOCUMENT_URI
\yii\helpers\Url::to(['/']);
\yii\helpers\Url::home();
複製代碼
【解決方法】:
在Yii2 config ->
request
component -> baseUrl 設定基礎目錄(同Nginx location目錄名),以讓Yii依此套用全部基礎Url,也才能依此路徑去比對REQUEST_URI取得Route。
$config = [
'components' => [
'request' => [
'cookieValidationKey' => '',
'baseUrl' => '/location_here'
],
]
]
複製代碼
歡迎光臨 中央論壇 - CENTER BBS (https://www.centerbbs.com/)
Powered by Discuz! X3