Cara menyembunyikan akhiran .php dalam url yii: 1. Tambah fail .htaccess; 2. Tambah "'urlManager' => [...]" pada tatasusunan komponen dalam config/web.php ; 3. Hanya ubah suai apache.
Persekitaran pengendalian artikel ini: sistem Windows 7, versi yii2.0, komputer Dell G3.
Bagaimana untuk menyembunyikan akhiran .php dalam url yii?
Rangka kerja Yii mendayakan pengindahan URL, menyembunyikan index.php [2.0 versi]
pengindahan url:
Tujuan: cantikkan http://localtest/yii/web/index.php?r=hello/index
menjadi: http://localtest/yii/web/hello/index
Di sini Saya menggunakan wampserver untuk mencipta tapak localtest baharu (klik di sini untuk butiran), dan menamakan semula folder asas yii kepada yii.
Membandingkan dua alamat di atas, ia sebenarnya menyembunyikan index.php?r=.
Terdapat dua langkah di sini:
1 Tambah fail .htaccess
Tambahkan fail .htaccess dalam direktori akar web, kandungannya ialah:
<.>RewriteEngine On DirectoryIndex index.html index.php # 如果是一个目录或者文件,就访问目录或文件 RewriteCond %{REQUEST_FILENAME} !-d #如果文件存在,就直接访问文件,不进行下面的RewriteRule RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . index.php
'urlManager' => [ // //开启url美化 'enablePrettyUrl' => true, // //隐藏index.php 'showScriptName' => false, // //禁用严格匹配模式 'enableStrictParsing' => false, // //url后缀名称 // 'suffix'=>'.html', 'rules' => [ ], ],
Alih keluar simbol "#" sebelum LoadModule rewrite_module modules/mod_rewrite.so;
Kemudian ubah suai AllowOverride apache
Tukar AllowOverride None to AllowOverride All;>
Oleh kerana saya Tapak ini dikonfigurasikan dalam confextrahttpd-vhosts.conf, jadi saya perlu menyegerakkannya ke httpd-vhosts.conf dan menukar AllowOverride Tiada tapak yang sepadan kepada AllowOverride All;Pada ketika ini, Saya boleh menggunakan http://localtest/ yii/web/hello/index untuk melawati http://localtest/yii/web/index.php?r=hello/indexDisyorkan : "yii tutorial
》Atas ialah kandungan terperinci Bagaimana untuk menyembunyikan akhiran .php dalam url yii. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!