.htaccess только несколько файлов .htm и .html - PullRequest
0 голосов
/ 13 ноября 2011

У меня есть файл .htaccess с содержимым ниже, который меняет мой index.php? Page = aboutus на aboutus.htm RewriteRule ^ ([^ /.] +) (. Html) /? $ Index.php? Page = $ 1

Я использую $ _GET ["page"] для печати содержимого из базы данных, используя PHP, но если кто-то наберет test.html , он проверяет базу данных на test data,

Как я могу использовать .htaccess, чтобы разрешить только несколько файлов .html в URL, таких как aboutus.html, home.html, projects.html и т. Д ...

Спасибо

Ответы [ 2 ]

0 голосов
/ 13 ноября 2011
RewriteRule ^(aboutus|home|projects)\.html/?$ index.php?page=$1

PS.почему вы хотите сохранить часть .html в своих URL?Они действительно ничего не добавляют.

0 голосов
/ 13 ноября 2011

Как я уже говорил в своем комментарии, вы можете выполнить проверку прямо в своем php-скрипте.

в любом случае, если вы действительно хотите сделать это с файлом .htaccess, который вы могли бы рассмотреть с помощью RewriteMap:

Документация Apache .

однако это может быть немного сложным, если вы с ним не знакомы и если проверка применяется для небольшого набора файлов, лучше использоватьRewriteCond директива:

RewriteCond %{REQUEST_URI} ^/(aboutus|home|projects)
RewriteRule ^([^/\.]+)(.*)?$ index.php?page=$1 [L] 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...