當前位置: 首頁> 最新文章列表> Yii2 開啟enablePrettyUrl 後如何正確設置defaultAction

Yii2 開啟enablePrettyUrl 後如何正確設置defaultAction

gitbox 2025-07-28

Yii2 中enablePrettyUrl 的作用介紹

在配置defaultAction 之前,首先要了解Yii2 框架中的enablePrettyUrl屬性。該屬性能將傳統的帶參數URL(如?id=xx&name=yy )轉換為簡潔且易讀的URL 格式,比如把index.php?r=site%2Fabout&id=1改寫成site/about/1 。這種URL 優化不僅提升用戶體驗,也對搜索引擎優化(SEO)非常有幫助。

在Yii2 配置文件中,通常使用如下代碼啟用該功能:

 'urlManager' => [
    'class' => 'yii\web\UrlManager',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
],

這裡, 'enablePrettyUrl' => true表示啟用美化URL, 'showScriptName' => false表示隱藏index.php文件名。

如何修改Yii2 默認視圖

Yii2 通過defaultRoute屬性控制默認視圖,設置後訪問網站根目錄時會直接顯示指定頁面。例如,以下配置將默認視圖設置為site/index

 return [
    // ...
    'defaultRoute' => 'site/index',
    // ...
];

通過defaultAction 設置默認訪問頁面

如果想指定訪問控制器時的默認動作,可以使用defaultAction屬性。示例配置如下:

 'urlManager' => [
    'class' => 'yii\web\UrlManager',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
    'rules' => [
        '' => 'site/index',
    ],
    'defaultAction' => 'site/index',
],

這裡,空字符串''代表網站根目錄,將其映射到site/index頁面。

'rules'用於定義自定義的URL 路由規則,可以根據需求添加更多映射。例如:

 'rules' => [
    '' => 'site/index',
    'login' => 'site/login',
    'admin' => 'admin/default/index',
],

配置修改後的注意事項

完成配置修改後,建議重啟Apache 或Nginx 服務器,以確保Yii2 框架的新設置生效。默認頁面和路由的合理設置不僅能提升訪問速度,還能顯著優化SEO。

總結

合理配置enablePrettyUrldefaultAction是Yii2 開發中優化用戶訪問體驗和搜索引擎排名的重要步驟。通過本文介紹的示例,您可以輕鬆調整默認頁面和路由規則,打造結構清晰且高效的應用。