2017-10-21 96 views
3

J'ai du mal à coder mon fichier htaccess pour faire ce que j'ai besoin de faire - je ne suis pas très familier avec la langue utilisée dans htaccess si nue avec moi..htaccess autorise l'extension, n'autorise aucune extension, et autorise la barre oblique finale

Voici ce que j'ai jusqu'à présent:

RewriteOptions inherit 
ErrorDocument 404 http://www.tempsite.com/400.php 
ErrorDocument 500 http://www.tempsite.com/500.php 

RewriteEngine On 

RewriteRule ^index/?$ index.php [NC] 
RewriteRule ^pricing/?$ pricing.php [NC] 
RewriteRule ^support/?$ support.php [NC] 
RewriteRule ^about/?$ about.php [NC] 
RewriteRule ^learning/?$ learning.php [NC] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ $1.php [L] 

donc de mes tests et mes connaissances ce que cela fait est:

  • met en place une page d'erreur 404 et 500 redirect
  • tout pages qui se terminent par une barre oblique, rediriger vers .php
  • toutes les pages se terminant par une extension quelconque, rediriger vers .php

Cela fait ce que je veux CEPENDANT je ne veux pas avoir à ajouter chaque page comme: RewriteRule ^index/?$ index.php [NC] chaque fois que je crée une nouvelle page, comment puis-je écrire un RewriteRule qui fait la même chose (permet la page avec une barre oblique et sans) mais pour toutes les pages de domaine?

Répondre

2

Vous pouvez utiliser:

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{DOCUMENT_ROOT}/$1.php -f 
RewriteRule ^(.+?)/?$ $1.php [L] 

Au lieu de toutes les lignes de RewriteRule ^index/?$ index.php ...

+0

hey man! merci pour le commentaire mais ce ne fonctionnait pas pour moi :( – Jesus

+0

Quel est le problème – Croises

+0

je ne suis pas tout à fait sûr comment l'erreur vérifier les fichiers .htaccess - rien n'apparaît dans la console – Jesus