在Lighttpd中为两台主机配置mod_rewritte

在Lighttpd中为两台主机配置mod_rewritte

我在使用 Lighttpd 在两个主机上配置 mod_rewrite 时遇到问题。

我有一个比旧版本更新的版本。旧版本不使用mod_rewrite,而新版本使用。但是,问题是,如果我启用模块lighttpd.conf,那么旧版本会进行所有重定向,即使我没有将其配置为进行任何重定向。

这是我的配置文件:

$HTTP["host"]=~"test.org" {
    server.document-root = "/var/www/virtual/acruz/www/public/"
    server.errorlog      = "/var/www/virtual/acruz/logs/error.log"
    accesslog.filename   = "/var/www/virtual/acruz/logs/access.log"

    url.rewrite-once = (
        ".*\.(js|ico|gif|jpg|png|css|)$" => "$0",
        "^/.*(\?.*)"                     => "/index.php$1",
        ""                               => "/index.php"
    )
}

$HTTP["host"]=~"r5.test.org" {
    server.document-root   = "/var/www/virtual/acruz/r5/"
    server.errorlog        = "/var/www/virtual/acruz/logs/error.log"
    accesslog.filename     = "/var/www/virtual/acruz/logs/access.log"
    setenv.add-environment = ("env" => "acruz")
}

答案1

正如 j0k 所说,使用更好的主机匹配 - `=~“test.org” 也匹配“r5.test.org”。

您也可以只有一个server.errorlog(您还没有收到配置警告/错误,但它将只使用其中一个配置的文件)。

相关内容