Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.141.199.243] |
|
Сообщ.
#1
,
|
|
|
Например, если юзверь сделал запрос
http://site.com/dir667/, то аппач должен вызвать скрипт на перле передав ему в качестве параметра dir667, ну и разумееться всё, что выведет скрипт должно попасть в браузер Что бы было ещё понятнее: вот на этом сайте данная фича реализованна. |
Сообщ.
#2
,
|
|
|
А зачем перехватывать? В папке либо лежит испольняемый прел-скрипт, либо лежит страница, перенапрявляющая браузер на общий скрипт с определёнными параметрами. В данном случае определение папки не требуется, так как обращение идёт к файлу в конкретной папке. Но можно просто и просто получить имя текущей папки.
|
Сообщ.
#3
,
|
|
|
Цитата В папке либо лежит испольняемый прел-скрипт, либо лежит страница, перенапрявляющая браузер на общий скрипт с определёнными параметрами. Я хочу чтобы параметры были не видны Т.Е. само имя папки служило параметром. Цитата В данном случае определение папки не требуется, так как обращение идёт к файлу в конкретной папке. Виноват, плохо сформулировал вопрос. Дело в том что предпологаеться что этих папок будет много, и на самом деле их не будет существовать вовсе, таким образом я хочу заменить параметры именем папки - передавать их скрыто, что бы никто не догадался Добавлено в : что страничка динамическая. |
Сообщ.
#4
,
|
|
|
используй мод "mod_rewrite"
Добавлено в : всё, что открывается в директории qqq в корне сервера нужно переправлять на скрипт "/cgi-bin/script.cgi?<зедсь здесь передавать скрипту путь>" суём в диресторию qqq файл .htaccess в котором пишем: RewriteEngine on RewriteRule ^(.*)$ /cgi-bin/script.cgi?$1 [L] RewriteRule ^$ /cgi-bin/script.cgi [L] 1 строка - врлючение реврайта 2ая - если ввели путь /qqq/<что-то> то пользоватлю отправится то что находится по пути /cgi-bin/script.cgi?<что-то> 3я = если ввели /qqq/ то пользоватлю отправится то что находится по пути /cgi-bin/script.cgi |
Сообщ.
#5
,
|
|
|
Интересная проблема. Я ее тоже в свое время реализовывал (http://www.fdo.org.ua/mg)
Тут много интересной инфы по теме. |
Сообщ.
#6
,
|
|
|
OlegGG, Chainick
Спасибо вам ребята! Только вот у меня такая штука [html] <FilesMatch "^([^\.]+)$"> ForceType throw </FilesMatch> <FilesMatch /cgi-bin/showGetPar.pl> ForceType application/x-httpd-php </FilesMatch> [/html] отказываеться работать - когдая я делаю запрос mysite.ru/qqq/chtoto, выскакивает 404ая страничка. Естественно в директории www есть папка qqq в ней есть .htacces с кодом который я написал выше. Добавлено в : или сей способ будет работать только с php |
Сообщ.
#7
,
|
|
|
Насколько я знаю эти директивы предназначены больше для переопределения майм-типов фйлов, но не для редиректа. Как их можно использовать подобным образом навскидку не приходит в голову.
А чем тебе mod_rewrite не понравился? Он ведь специально для этого предназначен? |
Сообщ.
#8
,
|
|
|
Почему, нравиться просто это отдельный модуль и я ещё не проверял есть ли он на моём хостинге.
|
Сообщ.
#9
,
|
|
|
Ну, тогда смотри свою ошибку - ты написал условия для редиректа, но не описал действие throw. Т-е пропустил строчку Action throw your_script.php.
Имеем следующий список директив .htaccess (я проверял у себя): Action throw /1.php <FilesMatch "^([^.]+)$"> ForceType throw </FilesMatch> Все запросы, не имеющие точку перенаправляются на 1.php. В переменной $HTTP_SERVER_VARS['PATH_INFO'] будет запрашиваемая ссылка. ЗЫ. Правда значение переменной я смотрел с помощью РНР, как это организовать на другом языке не подскажу, но идею, надеюсь ты понял. |
Сообщ.
#10
,
|
|
|
Chainick
Спасибо теперь усё заработало. Но по той ссылке которую ты мне дал говориться следующее Цитата Говорят, что для того, чтобы ForceType работал, php должен быть подключен к апачу в виде модуля. Если php вызывается, как обыкновенный CGI — ForceType работать не будет. А у меня под виндой работает переадресация на перл скрипт (сам перл подключен к апачу как отдельное приложение а не как модуль) |
Сообщ.
#11
,
|
|
|
Ну, тут же написано про РХР, а не перл... К тому же ясно не сказано работает или нет, просто - "Говорят".
|