Rumah  >  Artikel  >  rangka kerja php  >  Konfigurasi penghalaan dalam rangka kerja Yii: pengindahan URL

Konfigurasi penghalaan dalam rangka kerja Yii: pengindahan URL

WBOY
WBOYasal
2023-06-21 15:59:001216semak imbas

Dengan perkembangan pesat Internet, pengalaman orang ramai dalam menggunakan tapak web menjadi lebih baik dan lebih baik. Antaranya, bentuk URL secara beransur-ansur menjadi faktor penting untuk pengguna menilai kualiti laman web. Untuk pengindahan URL, rangka kerja Yii menyediakan pelbagai penyelesaian konfigurasi penghalaan. Artikel ini akan menumpukan pada konfigurasi penghalaan dalam rangka kerja Yii dan cara melaksanakan pengindahan URL.

1. Asas konfigurasi penghalaan

Penghalaan merujuk kepada pemetaan alamat URL yang diminta kepada pengawal dan kaedah tertentu untuk mencapai pemprosesan permintaan tertentu. Dalam rangka kerja Yii, konfigurasi penghalaan diselesaikan melalui pengurus URL (UrlManager). Pengurus URL berada dalam folder konfigurasi fail konfigurasi aplikasi, seperti berikut:

'components' => [
    'urlManager' => [
        'class' => 'yiiwebUrlManager',
        'enablePrettyUrl' => true,
        'showScriptName' => false,
        'rules' => [
            // ...
        ],
    ],
],

Antaranya, enablePrettyUrl menunjukkan sama ada untuk mendayakan URL yang dipercantik, dan disyorkan untuk menetapkannya kepada true; 🎜> menunjukkan sama ada dalam URL Apabila memaparkan nama fail skrip (seperti index.php), ia juga disyorkan untuk menetapkannya kepada showScriptName untuk mengelakkan menjejaskan keindahan URL. false

2. Penghalaan statik

Penghalaan statik bermaksud alamat URL tertentu boleh dipetakan terus kepada pengawal dan kaedah. Sebagai contoh, kita boleh menukar alamat URL seperti

secara statik kepada index.php?r=site/about dan hanya masukkan about terus apabila mengakses. http://yourdomain.com/about

Dalam rangka kerja Yii, kaedah melaksanakan penghalaan statik adalah seperti berikut:

'rules' => [
    'about' => 'site/about',
],

di mana

mewakili alamat URL yang dipetakan, dan about mewakili pengawal dan kaedah tertentu. site/about

3. Penghalaan dinamik

Penghalaan dinamik merujuk kepada memetakan alamat URL dengan parameter kepada pengawal dan kaedah serta menghantar data melalui parameter. Contohnya, kita boleh menukar alamat URL seperti

secara dinamik kepada index.php?r=site/view&id=1 dan hanya masukkan view/1 terus apabila mengakses. http://yourdomain.com/view/1

Dalam rangka kerja Yii, kaedah untuk melaksanakan penghalaan dinamik adalah seperti berikut:

'rules' => [
    'view/<id:d+>' => 'site/view',
],

di mana

mewakili alamat URL yang dipetakan, dengan view/3493f3358a126a26f38915ea72d0923c ialah nama parameter dan id ialah nombor yang sepadan Ungkapan biasa, d+ mewakili pengawal dan kaedah tertentu. site/view

4. Penghalaan lanjutan

Penghalaan lanjutan ialah lanjutan daripada penghalaan statik dan dinamik, yang boleh mencapai pemetaan URL yang lebih kompleks. Sebagai contoh, kita boleh menukar alamat URL seperti

kepada index.php?r=user/profile dan hanya masukkan profile/username terus apabila mengakses. http://yourdomain.com/profile/admin

Dalam rangka kerja Yii, kaedah untuk melaksanakan penghalaan lanjutan adalah seperti berikut:

'rules' => [
    [
        'class' => 'yiiwebUrlRule',
        'pattern' => 'profile/<username:w+>',
        'route' => 'user/profile',
        'suffix' => '',
    ],
],

di sini menunjukkan bahawa kami menggunakan penghalaan lanjutan dan 'class' => 'yiiwebUrlRule' menunjukkan peraturan padanan bagi Alamat URL, dengan 'pattern' => 'profile/3b95aa1ce85f471b227ef3723047aeb2' mewakili nama parameter dan ungkapan biasa, 3b95aa1ce85f471b227ef3723047aeb2 mewakili pengawal dan kaedah tertentu dan 'route' => 'user/profile' mewakili aksara tambahan di hujung alamat URL. 'suffix' => ''

Ringkasan

Melalui pengenalan di atas, kita boleh memahami kaedah asas konfigurasi penghalaan dalam rangka kerja Yii dan perbezaan di dalamnya. Walau bagaimanapun, semasa mengkonfigurasi penghalaan, anda perlu memberi perhatian kepada keindahan dan kebolehbacaan alamat URL, dan juga membuat pengaturan yang baik untuk pengawal dan kaedah asas. Hanya dengan mencapai keseimbangan antara kedua-dua aspek, alamat URL tapak web boleh dipetakan dengan lebih baik kepada pengawal dan kaedah tertentu dalam senario yang berbeza, sekali gus meningkatkan pengalaman tapak web.

Atas ialah kandungan terperinci Konfigurasi penghalaan dalam rangka kerja Yii: pengindahan URL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn