Добрый день.Стоит Apache 2.0.46, php как модуль (Apache 2.0 Filter)в DOCUMENT_ROOT лежит файл art произвольного PHP-содержания, пусть будет такой:
$cat ./art
<?php
print "1";
?>набираю URL
http://domain.ru/art - Получаю ответНабираю
http://domain.ru/art/something - Получаю ошибку 404 и запись в ErrorLogВ настройке апача добавлена директива, призывающая принудительно обрабатывать файл как PHP.
<FilesMatch "^(art)$">
ForceType application/x-httpd-php
</FilesMatch>Формулировка проблемы/задачи: при получении запроса вида
http://domain.ru/art/something
не выдавать ошибку, а выполнять скрипт art.Почему вопрос возник - переношу сайт, который работает на стороннем хостинге. У себя столкнулся вот с такой ситуацией. Просьба кто знает способы решения, просьба отписаться.
из описания ни чего не понятно
регулярное выражение однозначно определяет выполнять как PHP только файл art, ведь ^ и $ означают начало и конец строки, something ну ни как не попадает в это правило
Ежеле хочется все файлы в каталоге art обрабатывать как PHP, то FilesMatch как может помочь в отношении каталога???И еще не ясно как в одном месте и файл и каталог с одним именем? 8)
>из описания ни чего не понятно
>регулярное выражение однозначно определяет выполнять как PHP только файл art, ведь ^
>и $ означают начало и конец строки, something ну ни как
>не попадает в это правилоНеважно. art - это файл!
>Ежеле хочется все файлы в каталоге art обрабатывать как PHP, то FilesMatch
>как может помочь в отношении каталога???art - это файл!! через него работает сайт. То есть любой URL идет в виде
domain.ru/art/something!
>И еще не ясно как в одном месте и файл и каталог
>с одним именем? 8)каталога нет, есть только файл.
бред какой-то
может я конечно чего-то не понимаю ...
а как все это связано art + / + something
как это должно работать???и еще, а что у Вас в ErrorLog
>бред какой-то
>может я конечно чего-то не понимаю ...
>а как все это связано art + / + something
>как это должно работать???
>
>и еще, а что у Вас в ErrorLogБред? Я тоже так думаю. Однако у меня 2 сайта таких. Клиент заказал их в агенствах. Заказ был выполнени. Оба сайта работают очень просто: любая ссылка имеет вид
file/что-то/там/ещегде file - это именно файл. То есть управление переходит в file, который уже на основе /что-то/там/еще формирует страницу.
Извиняюсь насчет ErrorLog, запись в acceslog
"GET /art/vacancies/ HTTP/1.1" 404
ошибка 404ю
Можно использовать mod_rewrite со слудующим правилом:
RewriteRule ^art/.+$ artВопрос, только в том, откуда php скрипт извлекает информацию о запрошенном URL.
>Можно использовать mod_rewrite со слудующим правилом:
>RewriteRule ^art/.+$ art
>
>Вопрос, только в том, откуда php скрипт извлекает информацию о запрошенном URL.
>
из $_SERVER['REQUEST_URI']
Решение найдено. Если кому интересно:
Нужно было всключить директиву
AcceptPathInfo Onhttp://httpd.apache.org/docs/2.0/mod/core.html#acceptpathinfo