Jump to content

Recommended Posts

Posted

Есть web сервер с Apache. Необходимо сделать следующее, когда пользователь запрашивает какую либо страницу, apache должен сначала обработать определенный скрипт, и в зависиости от результата выдать требуюмую страницу, либо другую. Как это можно сделать?

Posted

Пробовал реализовать с помошью Action и Handler

 

В httpd.conf добавил

Action My_Preprocessor "http://site/cgi-bin/script.pl?"

AddHandler My_Preprocessor .html .php

 

script.pl перекидывает на страницу, которая указана после "?"

 

Получается круговорот) apache перекидывает на script.pl, script.pl обрабатывает и перекидывает на страницу, но апачь перекидывает на скрипт)

Posted
например

RewriteEngine On

RewriteRule ^dir/ /my_handler.php

и что должно быть в /dir?

my_handler.php - это тот скрипт, который проверять должен? что дальше с запросом он будет делать?

Posted

mav, тогда можно попробовать зделать так.

1. перехват любой страницы кроме чего-нибудь, например /no/url, по которому идёт перенаправление на url

после обработки скриптом, если требуется получить данные, тогда переадресовывать на /no/url.

2. зарегистрировать PHP для нужных типов, поставить в PHP.ini приереплять скрипт который и будет обрабатывать и если содержимое не нужно, тогда делаь тупой выхов функции exit().

Posted

закидываешь в корень, например, .htaccess

в него пишешь

RewriteEngine On 

RewriteRule ^dir/ /my_handler.php

после этого любой запрос типа http://my.super.server/dir/tryetr/tert/ert

будет обрабатывается скриптом my_handler.php

в скрипте соответственно надо проверять урл и, сиходя из него, делать что надо.

Posted
закидываешь в корень, например, .htaccess

в него пишешь

RewriteEngine On 

RewriteRule ^dir/ /my_handler.php

после этого любой запрос типа http://my.super.server/dir/tryetr/tert/ert

будет обрабатывается скриптом my_handler.php

в скрипте соответственно надо проверять урл и, сиходя из него, делать что надо.

ну вот скрипт отработал, все ок доступ дать можно, пересылает на страницу http://my.super.server/dir/tryetr/tert/ert, а апач снова перекидывает на скрипт, и так постояно)

Posted
mav, тогда можно попробовать зделать так.

1. перехват любой страницы кроме чего-нибудь, например /no/url, по которому идёт перенаправление на url

после обработки скриптом, если требуется получить данные, тогда переадресовывать на /no/url.

что юзеру будет мешать, набрать /no/url, обходя скрипт?

Posted
Есть web сервер с Apache. Необходимо сделать следующее, когда пользователь запрашивает какую либо страницу, apache должен сначала обработать определенный скрипт, и в зависиости от результата выдать требуюмую страницу, либо другую. Как это можно сделать?

 

Можно сделать обработчик на 404 ошибку, который будет выполнять нужные действия. А DocumentRoot пустой оставить. Параметры запуска брать - REQUEST_URI парсить.

Posted

mav,

что юзеру будет мешать, набрать /no/url, обходя скрипт?

Надро знать /no/, никто же не мешает его хзделать такого вида: /sasasJHIQUEfhiaaoiuedfh2089dsa7sir23o1boqsdbasjkodh23rdioasdha/

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.