Рейтинг:0

Lighttpd Выполнить ./cgi-bin/index.cgi, если он существует в папке

флаг us

BusyBox httpd выполняет ./cgi-bin/index.cgi если он существует.Это похоже на index.php но с /cgi-бен/ папка. Так, например, у меня есть структура:

/апи/
  cgi-bin/index.cgi
/блог/
  cgi-bin/index.cgi
  /rss/
    cgi-bin/index.cgi

Поэтому, когда запрос собирается http://example.com/api/ на самом деле ими занимается /www/api/cgi-bin/index.cgi сценарий. По запросу http://example.com/blog/ это обрабатывается /www/blog/cgi-bin/index.cgi но /блог/rss/ путь обрабатывается /www/blog/rss/cgi-bin/index.cgi.

Но теперь я также хочу поддерживать веб-сервер Lighttpd. Как я могу этого добиться?

Это похоже на Делаем перенаправление lighttpd с www.example.com на www.example.com/cgi-bin/index.pl но гораздо сложнее.

Рейтинг:1
флаг cn

Самое простое решение — использовать lighttpd mod_indexfile:

index-file.names = ("cgi-bin/index.pl" )

В качестве альтернативы, если вы хотите внутренне переписать цель, попробуйте lighttpd mod_rewrite:

В общем:

url.rewrite-once = ( ".*/(?:\?|$)" => "${url.path}cgi-bin/index.pl${qsa}" )

Точнее только для путей в вашем примере:

url.rewrite-once =
  ( "^/(?:api|blog(?:/rss)?)/(?:\?|$)" => "${url.path}cgi-bin/index.pl${qsa}" )

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.