La combinaison de la redirection HTTPS avec des règles de réécriture ne peut pas ajouter l'extension .php
P粉098417223
P粉098417223 2024-04-04 15:44:30
0
1
466

J'espère que quelqu'un pourra vous aider. Je souhaite supprimer l'extension de fichier (.php) des liens internes, mais bien sûr, je dois d'abord la configurer dans htaccess.

Je crois que le bon code est

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ .php [NC,L]

Mais quand j'ajoute ce code en dessous/au dessus du code préexistant (forçant https)

, rien ne se passe, c'est à dire que je dois quand même saisir le .php dans l'url.

Après avoir ajouté le code ci-dessus, le fichier htaccess ressemble à ceci :

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ .php [NC,L]
RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://mysite/ [R=301,L]

Une idée pour laquelle cela ne fonctionne pas ?

Merci

J'ai fait des recherches en ligne mais tous les messages disent d'ajouter simplement le code de réécriture à htaccess, malheureusement cela ne fonctionne pas.

Je ne pense pas que ce code fonctionne bien avec le code existant qui force https ? 🎜
P粉098417223
P粉098417223

répondre à tous(1)
P粉194919082

Je pense que RewriteRule est trop complexe. J'utilise les éléments suivants pour tous mes sites Web :

# append .php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .* rrreee.php [L]

# fallback to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal