Comment masquer index.php dans l'url yii : ajoutez d'abord le fichier ".htaccess" dans le répertoire racine du web ; puis modifiez la configuration "config/web.php" et enfin remplacez "AllowOverride None" par " ; AllowOverride All" ;" C'est tout.
Recommandé : "Tutoriel vidéo PHP" "Tutoriel yii"
Le framework Yii permet l'embellissement des URL et masque index.php [Version 2.0]
embellissement des URL
Objectif : http://localtest/yii/web/index.php?r= hello/index
est embelli en : http://localtest/yii/web/hello/index
Ici, j'ai utilisé wampserver pour créer un nouveau site localtest (pour plus de détails, cliquez ici et cliquez ici) et renommez le dossier de base de yii en yii.
En comparant les deux adresses ci-dessus, il 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 du Web, le contenu est :
RewriteEngine On DirectoryIndex index.html index.php # 如果是一个目录或者文件,就访问目录或文件 RewriteCond %{REQUEST_FILENAME} !-d #如果文件存在,就直接访问文件,不进行下面的RewriteRule RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . index.php
Impossible de créer directement .htaccess, vous pouvez d'abord créer un fichier txt, puis l'enregistrer sous..., enregistrer le nom du fichier sous .htaccess et sélectionner tous les fichiers comme type d'enregistrement.
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 modifier l'index.php?r dans l'URL = Supprimer, si une erreur 404 se produit, vous pouvez vérifier la configuration du serveur. J'utilise Apache intégré à phpstudy Vous devez vérifier la configuration
confhttpd.conf, activer le module mod_rewrite d'Apache
<.> et supprimez-le Le symbole "#" avant LoadModule rewrite_module modules/mod_rewrite.so;Puis modifiez le AllowOverride d'ApacheChangez AllowOverride None en AllowOverride All; Puisque je suis dans confextrahttpd Le site est configuré dans -vhosts.conf, je dois donc le synchroniser avec httpd-vhosts.conf et changer AllowOverride None du site correspondant en AllowOverride All ;À ce stade, Je peux utiliser http://localtest/yii/web/hello/index pour visiter http://localtest/yii/web/index.php?r=hello/indexCe 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!