Вопрос переписывания URL - PullRequest
0 голосов
/ 09 октября 2010

У меня есть CGI-скрипт (pwyky), который я назвал index.cgi, поместил в каталог wiki / и настроил Apache для вызова localhost / wiki / index.cgi при доступе к localhost / wiki.

IЯ получаю ошибки, когда пытаюсь использовать это приложение - оно создает страницу со ссылками типа "http://localhost/wiki/@edit/index",", но когда я нажимаю эту ссылку, Apace пытается использовать файл "wiki / @ edit / index" в качестве файла.Я подозреваю, что мне нужно, чтобы Apache передал / @ edit / index в index.cgi.

В частности, просматривая index.cgi, он ищет строки типа "@edit" в переменной среды REQUEST_URI.

Есть идеи, как это исправить?

Ответы [ 2 ]

0 голосов
/ 11 октября 2010

Я обнаружил проблему, оказалось, что это делается через RewriteEngine. Pwyky помещает файл .htaccess в каталог со всеми настройками для RewriteEngine, но, поскольку AllowOverride имеет значение «Нет» по умолчанию в MacOS, они игнорируются Решением было изменить все директивы AllowOverride на «All»

0 голосов
/ 10 октября 2010

Вы должны показать свою конфигурацию apache, чтобы сказать наверняка, но похоже, что Apache на самом деле не использует mod_cgi для обслуживания сценария index.cgi. В вашей конфигурации должно быть что-то вроде 'LoadModule mod_cgi'. Он не должен быть прокомментирован (то есть не должен иметь «#» в начале строки).

Если вы хотите проверить это, то напишите сценарий 'Hello World' cgi и поместите его (временно) вместо index.cgi и посмотрите, сможете ли вы его запустить. Дайте нам знать результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...