![]() |
Как написать .htaccess для php?
Пример .htaccess из Django на языке Python:
SetHandler mod_python PythonHandler django.core.handlers.modpython PythonPath "['/public_html'] + sys.path" SetEnv DJANGO_SETTINGS_MODULE programma.settings PythonDebug On ....говоря по-русски: использовать модуль mod_python для любого URL применяя обработчик django.core.handlers.modpython который расположен по адресу ['/public_html'] + sys.path" ну и некая переменная окружения, в которой хранится путь и имя файла конфигурации.... Как сделать тоже самое для php? P.S.: php работает как модуль Apache, т .е. mod_php5. P.P.S: Просьба к людям, которые ответ на любой вопрос ищут в Википедии и тут же влезают в дискуссию с умным видом, сообщая какой-нибудь факт, найденный в Википедии. Уважаемые, блесните «знаниями» не в этом вопросе. |
Не понял что конкретно нужно сделать.
Написать чтобы тотже модуль питона вызывался? ЗЫ. .htaccess не для php. Он для сервера apache. |
Если я правильно понял Вы хотите чтобы был только один вход (entrypoint), например index.php? Я бы тогда с помощьбю mod_rewrite рекомендовал все запросы переадресовать и все.
Если вдруг MR не доступен (такое редко случается чтобы mod_rewrite был не доступен на современных хостингах, но все же бывает), остается крайний вариант через обработчик 404 ошибки. Но в этом случае имеем засирание логов, и если предполагается их потом анализ, это может быть проблемой. |
Путь к скрипту
Да, совершенно верно .htaccess:
RewriteEngine On RewriteRule ^.*$ script.php [NC,L] С этим как раз всё ясно. Но вот возможно ли по аналогии php как cgi? например: SetHandler obrabotchik Action obrabotchik <[путь]имя файла> А как модуль php типа: SetHandler application/x-httpd-php <каким-то образом указать путь к нужному скрипту> mod_python ведь работает. Или же с mod_php так невозможно сделать, т. е. нет таких директив в природе? Имхо возможно ищем не в том месте. |
CGI хандлер можно добавить любой скрипт. Если очень хочется, думаю еще можно рганизовать с помощью RedirectMatch.
Только смысл? Чем MR класический плох, что нужно искать другие пути? |
Цитата:
Для переноса сайта с хостинга на хостинг - это громадное неудобство....каждый путь переписывать, подстраиваться под mr - пустая трата времени. Для каких-то других задач mr может и хорош, но не для entrypoint (имхо). |
Цитата:
Цитата:
Это же классический стандартный путь, большинство MVC фрэймворков так работают, например та же Joomla. |
Вот такая запись .htaccess работает на денвере:
Action obrabotchik /cgi-bin/script.cgi SetHandler obrabotchik А при переносе на сервер - 500-я ошибка --------- На хостинге указано следующее: "На нашем хостинге невозможно использовать директиву SetHandler cgi-script. В этом случае ваши скрипты будут запускаться от пользователя nobody и работать не будут." Что бы это значило? Связано ли это с 500-й ошибкой и как исправить? |
С ошибкой связано. Значит хостинг не разрешает таким образом назначать обработчики. Если это не какой-нибудь стандартный php-cgi, который просто можно закоментировать в таком случае, то Вам видимо придется сменить хостинг.
|
| Часовой пояс GMT +4, время: 06:44. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.