У меня есть сервер lighttpd с fastcgi и web.py со следующей конфигурацией fcgi:
fastcgi.server = ( "/code.py" =>
(( "socket" => "/tmp/fastcgi.socket",
"bin-path" => "/etc/lighttpd/code/code.py",
"check-local" => "disable",
"max-procs" => 1
)) )
и основной конфиг:
url.rewrite-once = (
"^(.*)/favicon.ico$" => "/static/favicon.ico",
"^/static/(.*)$" => "/static/$1",
"^/code.py(.*)$" => "/code.py/404",
"^/forum(.*)$" => "/code.py/forum/$1"
)
Если я захожу на www.mysite.com/forum, все работает как положено, но если я захожу на www.mysite.com/code.py/forum, я не перенаправляюсь на 404, как должен, а на самом деле получить первую ссылку. Я в основном хочу скрыть свои внутренности от внешнего мира.
Я посмотрел в журнал ошибок, и кажется, что сервер действительно переписывает URL-адрес, но это не имеет значения.
(response.c.300) -- splitting Request-URI
(response.c.301) Request-URI : /code.py/forum
(response.c.302) URI-scheme : https
(response.c.303) URI-authority: www.mysite.com
(response.c.304) URI-path : /code.py/forum
(response.c.305) URI-query :
(response.c.300) -- splitting Request-URI
(response.c.301) Request-URI : /code.py/404
(response.c.302) URI-scheme : https
(response.c.303) URI-authority: www.mysite.com
(response.c.304) URI-path : /code.py/404
(response.c.305) URI-query :
(response.c.349) -- sanatising URI
(response.c.350) URI-path : /code.py/404
(mod_access.c.135) -- mod_access_uri_handler called
(mod_fastcgi.c.3609) handling it in mod_fastcgi
(response.c.470) -- before doc_root
(response.c.471) Doc-Root : /var/www/html
(response.c.472) Rel-Path : /code.py
(response.c.473) Path :
(response.c.521) -- after doc_root
(response.c.522) Doc-Root : /var/www/html
(response.c.523) Rel-Path : /code.py
(response.c.524) Path : /var/www/html/code.py
(response.c.541) -- logical -> physical
(response.c.542) Doc-Root : /var/www/html
(response.c.543) Rel-Path : /code.py
(response.c.544) Path : /var/www/html/code.py
(mod_fastcgi.c.3035) got proc: pid: 30262 socket: unix:/tmp/fastcgi.socket-0 load: 1
Любые идеи?