yii Méthode pour masquer le suffixe .php dans l'url : 1. Ajoutez le fichier .htaccess ; 2. Ajoutez "'urlManager' => [...]" au tableau des composants dans config/web.php ; il.
L'environnement d'exploitation de cet article : système Windows 7, yii version 2.0, ordinateur Dell G3.
Comment masquer le suffixe .php dans l'url yii ?
Le framework Yii permet l'embellissement d'URL, en masquant index.php [Version 2.0]
embellissement d'url :
Objectif : http://localtest/yii/web/index.php?r=hello/index
Beautified into: http://localtest/yii/web/hello/index
Ici, j'ai utilisé wampserver pour créer un nouveau site localtest (cliquez ici pour plus de détails) et j'ai renommé le dossier de base yii en yii.
En comparant les deux adresses ci-dessus, cela cache en fait index.php?r=.
Il y a deux étapes ici :
1. Ajoutez le fichier .htaccess
Ajoutez le fichier .htaccess dans le répertoire racine Web Le contenu est :
RewriteEngine On DirectoryIndex index.html index.php # 如果是一个目录或者文件,就访问目录或文件 RewriteCond %{REQUEST_FILENAME} !-d #如果文件存在,就直接访问文件,不进行下面的RewriteRule RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . index.php
Vous ne pouvez pas créer .htaccess directement. Vous pouvez créer un fichier txt. d'abord, puis enregistrez-le sous... , enregistrez-le sous un fichier nommé .htaccess et sélectionnez tous les fichiers comme type de sauvegarde.
2. Configurez config/web.php. Ajoutez cet élément au tableau des composants dans config/web.php :
'urlManager' => [ // //开启url美化 'enablePrettyUrl' => true, // //隐藏index.php 'showScriptName' => false, // //禁用严格匹配模式 'enableStrictParsing' => false, // //url后缀名称 // 'suffix'=>'.html', 'rules' => [ ], ],
À ce stade, vous pouvez supprimer index.php?r= dans l'URL si une erreur 404 se produit. , Vous pouvez vérifier la configuration du serveur. J'utilise Apache intégré dans phpstudy. Vous devez vérifier la configuration
confhttpd.conf et activer le module mod_rewrite d'Apache
Supprimez le symbole "#" devant les modules LoadModule rewrite_module. /mod_rewrite.so;
Modifiez ensuite le AllowOverride d'Apache
Changez AllowOverride None en AllowOverride All;
Depuis que j'ai configuré le site dans confextrahttpd-vhosts.conf, je dois le synchroniser avec httpd-vhosts.conf et modifier le AllowOverride Aucun des sites correspondant à AllowOverride All ;
À ce stade, je peux utiliser http://localtest/yii/web/hello/index
pour accéder à http://localtest/yii/web/index.php ? r=hello/index
Recommandé : "Tutoriel yii"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!