【问题标题】:lighttpd, mod_rewrite, web.pylighttpd,mod_rewrite,web.py
【发布时间】:2011-01-26 07:27:25
【问题描述】:

我有一个关于 lighttpd 和 web.py 的小问题。它在 Apache2 上运行得非常好,但在 lighttpd 上有一个小问题。

这是我的 web.py 的 lighttpd 配置

  fastcgi.server = ("/code.py" =>
    ((
      "socket" => "/tmp/fcgi.socket",
      "bin-path" => "/home/ivan/www/code.py",
      "max-procs" => 1,
      "check-local" => "disable",
    ))
  )

  url.rewrite-once = (
     "^/favicon.ico$" => "/static/favicon.ico",
     "^/static/(.*)$" => "/static/$1",
     "^/(.*)$" => "/code.py/$1"
   )

和一个示例 web.py 来演示我如何定义 URL。

urls = (
  '/page', 'Page',
  '/', 'Index',
)

class Index(object):
  def GET(self):
    raise web.seeother('/page')

当浏览器重定向到example.org/page URL 时会出现问题。 Apache2 重定向到 example.org/page,但 lighttpd 重定向到 example.org/code.py/page。我该如何解决这个小问题?我找到了解决方案,所以如果我写 raise web.seeother(web.ctx.homedomain+'/page') 一切都很好,但我想知道它是否可以在 lighttpd 配置文件中解决,而不是接触 web.py 代码。

谢谢,

【问题讨论】:

    标签: python lighttpd web.py


    【解决方案1】:

    在使用 fastcgi 生成脚本之前,只需设置

    export REAL_SCRIPT_NAME=""
    

    这应该可以。

    【讨论】:

    • REAL_SCRIPT_NAME="" 是做什么的?在 lighttpd 文档中没有提到它。谢谢。
    猜你喜欢
    • 2011-05-30
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-09
    相关资源
    最近更新 更多