Yii - Quy tắc của URL

Quy tắc URL là một ví dụ nếu yii\web\UrlRule. CácurlManager các thành phần sử dụng các quy tắc URL được khai báo trong rules khi định dạng URL đẹp được bật.

Để phân tích cú pháp một yêu cầu, trình quản lý URL lấy các quy tắc theo thứ tự chúng được khai báo và tìm kiếm quy tắc đầu tiên.

Step 1 - Sửa đổi urlManager thành phần trong config/web.php tập tin.

'urlManager' => [
   'showScriptName' => false,
   'enablePrettyUrl' => true,
   'rules' => [
      'about' => 'site/about',
   ]
],

Step 2 - Truy cập trình duyệt web của bạn tại http://localhost:8080/about, bạn sẽ thấy trang giới thiệu.

Quy tắc URL có thể được liên kết với các tham số truy vấn trong mẫu này -

<ParamName: RegExp>, trong đó -

  • ParamName - Tên tham số

  • RegExp - Một biểu thức chính quy tùy chọn được sử dụng để khớp với các giá trị tham số

Giả sử, chúng tôi đã khai báo các quy tắc URL sau:

[
   'articles/<year:\d{4}>/<category>' => 'article/index',
   'articles' => 'article/index',
   'article/<id:\d+>' => 'article/view',
]

Khi các quy tắc được sử dụng cho parsing -

  • /index.php/articles được phân tích cú pháp thành bài viết / index
  • /index.php/articles/2014/php được phân tích cú pháp thành bài viết / index
  • /index.php/article/100 được phân tích cú pháp thành bài viết / view
  • /index.php/articles/php được phân tích cú pháp thành các bài báo / php

Khi các quy tắc được sử dụng cho creating URLs -

  • Url :: to (['article / index']) tạo /index.php/articles

  • Url :: to (['article / index', 'year' => 2014, 'category' => 'php']) tạo /index.php/articles/2014/php

  • Url :: to (['article / view', 'id' => 100]) tạo /index.php/article/100

  • Url :: to (['article / view', 'id' => 100, 'source' => 'ad']) tạo /index.php/article/100?source=ad

  • Url :: to (['article / index', 'category' => 'php']) tạo /index.php/article/index?category=php

Để thêm hậu tố vào URL, bạn nên định cấu hình yii\web\UrlManager::$suffix bất động sản.

Step 3 - Sửa đổi urlComponent bên trong config/web.php tập tin.

'urlManager' => [
   'showScriptName' => false,
   'enablePrettyUrl' => true,
   'enableStrictParsing' => true,
   'suffix' => '.html'
],

Step 4 - Nhập địa chỉ http://localhost:8080/site/contact.htmltrong thanh địa chỉ của trình duyệt web và bạn sẽ thấy thông tin sau trên màn hình của mình. Chú ýhtml hậu tố.