.htaccess Как скрыть расширения .php ПОЛНОСТЬЮ?!

valoook

Новичок
Добрый вечер.

Имеются файлы с расширения .php которые кроме исполнения, сохраняют свой результат в такой же файл с расширением .html
Сейчас задано правило, которое проверяет наличие файла .html и если его нету запускает файл с таким же именем и расширением .php
Однако все эти страницы работают и при запуске напрямую .php файла

Я хочу чтобы при открытии файлов .php сервер выдавал 404 ошибку.
Подскажите как это сделать?

Мне нужно это чтобы:
во первых защититься от дублей страниц,
во вторых скрыть расширения .php
в третьих зачем тратить ресурсы на исполнения php файла если уже есть статические
 

fixxxer

К.О.
Партнер клуба
Да ладно, так-то нормальная схема кэширования в статику, хоть и наивная.

Можно так. Перекинуть все php файлы вне document root (или, если это невозможно, в закрытый htaccess-ом подкаталог), в случае отсутствия реврайт-правилом всегда кидаем на один и тот же файл, а тот смотрит в request_uri и инклюдит нужный php. Заодно запись кэша в html не разносится копипастой по всем php а пишется один раз прямо после инклюда (через output buffering).
 

valoook

Новичок
Да ладно, так-то нормальная схема кэширования в статику, хоть и наивная.

Можно так. Перекинуть все php файлы вне document root (или, если это невозможно, в закрытый htaccess-ом подкаталог), в случае отсутствия реврайт-правилом всегда кидаем на один и тот же файл, а тот смотрит в request_uri и инклюдит нужный php. Заодно запись кэша в html не разносится копипастой по всем php а пишется один раз прямо после инклюда (через output buffering).
Спасибо за ответ, а можно вопрос почему наивно? Просто если сайт статический.

P.S. И сиру Марксу спасибо за шутку.
 

fixxxer

К.О.
Партнер клуба
А, ну если совсем статический, тогда вопрос об инвалидации по зависимостям не встанет. Но почему бы тогда статику вообще заранее не генерить, прямо из админки?
 
Сверху