Я искал лучший способ переключить файл index.html моего сайта в файл index.php. Мои исследования показывают, что это небрежно приведет к удару по моим рейтингам в Google и что мой лучший вариант – проанализировать индексный файл как php, отметив, что это единственный файл на сайте, где ожидается такой синтаксический анализ.
Я прочитал замечательный SO-поток здесь: проанализируйте HTML как PHP, который был очень полезен по этому вопросу, и я решил использовать директиву Filesmatch, чтобы сделать это в моем файле .htaccess. Однако лучший ответ, представленный там IMHO, был тем, который предложил следующий код.
<FilesMatch "^file_name\.html$"> AddType application/x-httpd-php .html </FilesMatch>
Я, конечно, реализовал это как:
<FilesMatch "^index\.html$"> AddType application/x-httpd-php .html </FilesMatch>
Хотя это отлично подходит для страницы index.html root, все подкаталоги сайта также имеют страницы index.html, и получается, что все они также обрабатываются как php. Для безопасности я не хочу этого поведения. Я не являюсь профессионалом Apache и немного выхожу из глубины, поэтому спрашиваю вас, ребята. Есть ли способ остановить это и сделать корневой индексный файл единственным, на который нацелена эта директива Filesmatch? Спасибо.
Вместо того, чтобы /index.html
в качестве файла PHP, не просто использовать 301 (постоянную переадресацию) из /index.html
в /index.php
используя следующее правило в корневом /index.html
.htaccess:
RewriteEngine On RewriteCond %{THE_REQUEST} \s/index\.html [NC] RewriteRule ^index\.html$ /index.php [L,R=301,NC]