1

不太确定从哪里开始。我有这个重写规则,我们使用 lighttpd 用于我们的应用程序,我们正在考虑将 Web 服务器移动到 NginX 以实现标准化。

lighttpd.conf 中的 Lighttpd 配置行:

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

首先,谁能帮我翻译一下这些台词?我从别人那里继承了它,不知道这意味着什么?

接下来,如何将这些行转换为 NginX 中可用的配置行?我什至不确定要为大家提供什么来帮助理解这条线。我所知道的是,当我们从 lighttpd 中删除这些行时,应用程序停止工作。我让我们的 NginX 在 centos 6.4 上使用 Php-fpm 处理标准 Php。当我使用 phpinfo 文件时,NginX 能够生成信息,但是当我们安装应用程序时,它在错误日志文件中出现此错误。

2013/08/12 21:51:00 [error] 18844#0: *16 open() "/var/www/html/myapps/public/user/login" failed (2: No such file or directory), client: 192.168.8.100, server: _, request: "GET /user/login HTTP/1.1", host: "192.168.8.215"

在网络浏览器上我得到“ 404 not found ”错误。

同样为了一致性,任何人都可以建议如何翻译这一行吗?

location / { if ( $uri !~ ^/(index\.php|css|images|core|uploads|js|robots\.txt) ) { rewrite ^ /index.php last; } } 

请告知我可以提供的其他信息来帮助翻译吗?我什至不确定这是 NginX 问题还是应用程序问题。非常感谢您的所有帮助。

4

1 回答 1

1

我不太了解 lighttpd 配置,您需要向我解释一下,以便我可以用 nginx 格式编写它们。

另外我不知道什么会处理 PHP,是 fast-cgi 还是 fpm,还是什么?

server {
    server_name example.com; #replace with your domain name
    index index.php;
    location / {
        try_files $uri $uri/ /index.php$request_uri;
    }
    location ~* \.php$ {
        include        fastcgi_params;
        fastcgi_pass   127.0.0.1:9000;

    }
}
于 2013-08-13T06:48:21.840 回答