При создании даже персонального сайта далеко не каждый cможет предусмотреть все возможные
способы его дальнейшего использования. Очень важно подготовить почву для облегчения
дальнейшего развития сайта и внедрения новых технологий. Если в прошлом вы создали сайт
и по умолчанию присвоили всем страницам расширение .html, а только потом решили
воспользоваться таким замечательным языком как PHP, то тогда читайте дальше.
Раньше для использования SSI нужно было иметь страницы с расширением .shtml, но
сегодня серверы (большинства компаний по предоставлению услуг хостинга)
сконфигурированы так, что SSI можно использовать и на страницах с расширением .html,
что весьма удобно. С PHP совсем другая история - страницы должны иметь расширение .php
по умолчанию. Разработчики сайтов, заранее зная что будет использоваться данный язык
программирования, стразу присваивают правильное расширение.
Но что же делать если расширение другое и все страницы оканчиваются например на .html?
Это можно сделать несколькими способами. Самый явный способ - дать всем страницам
расширение .php или изменить уже существующие расширения (.html, .shtml и т.д.). У
этого способа есть недостатки. Например уже проиндексированным страницам с расширением
html придется заново индексироваться поисковыми системами. Или еще хуже - все внешние
ссылки, которые ссылаются явным образом на ту или иную страницу, будут недействительны.
И придется оповещать владельцев каждого сайта об этих изменениях и создавать для каждой
страницы еще одну страницу с 301 ошибкой. Конечно, изменить одно расширение на другое
допустимо, но что делать если сайт уже имеет много страниц и много ссылок на разные
страницы с других сайтов?
По осознанной причине все мои страницы имеют расширение html и мне никак не хотелось
делать вышеприведенные изменения, тем самым создавая себе лишние трудности. Можно
обойтись и другим способом. Если сервер на котором размещается сайт поддерживает
mod_rewrite (в большинстве случаев поддерживает) и есть доступ к изменению файла
.htaccess, то можно добавить следующие строки в этот самый файл:
RewriteEngine on
RewriteRule ^(.*)\.html $1\.php
Добавив этот код в .htaccess можно не волноваться. Все запрашиваемые несуществующие
страницы с расширением html будут автоматически заменяться расширением php благодаря
чудесам от Apache. Но и этот способ является не единственным. Можно прописать
следующее в том же самом .htaccess файле:
На мой взгляд самый удачный способ. Это делает html равным php, то есть все функции
PHP теперь могут быть использованы на страницах с расширением html. Если нет доступа
к .htaccess, то можно написать письмо хостинг компании и попросить чтобы они
самостоятельно прописали в конфигурации Apache (httpd.conf) нужное значение для
вашего сайта.
Если до этого на сайте использовалось SSI к примеру таким образом:
<#include
virtual="file.txt">
то тогда в новом PHPшном состоянии можно заменить на:
<? include('file.txt');
?>
Ну вот и все, думаю какой-нибудь из вышеприведенных способов поможет.