Nginx url rewrite error : [emerg] unexpected "}"

Nginx url rewrite error : [emerg] unexpected "}"

我正在尝试在 nginx 中重写 url,下面是我的示例代码:

server {
    listen 80;
    server_name example.com;
    root   /full/server/path/to/your/cms;
    index  index.php;

    location / {
        try_files $uri $uri/ /phphandler
    }

    location /phphandler {
        internal;
        # nested location to filter out static items not found
        location ~ .php$ {
            rewrite ^/([^/]*)(.*) / break;
            fastcgi_pass   127.0.0.1:8080;
            ...
        }
    }
}

我正在使用 DirectAdmin,当我从 linux 或 DirectAdmin 手动添加此代码块时,我遇到了同样的错误:

nginx: [emerg] unexpected "}" in /usr/local/directadmin/data/users/admin/nginx.conf:178 nginx: configuration file /etc/nginx/nginx.conf test failed

注意:我正在从 Here

复制粘贴这段代码 我怀疑问题出在 3 个点 ( ... ) 的位置(在 fastcgi_pass 127.0.0.1:8080; 之后)我想我应该在这里添加一些我不知道的东西?!

我在这段代码中遗漏了什么吗?
或者还有其他问题导致我遇到此错误?
提前感谢帮助我解决此问题的任何人:)

问题是您错过了 try_files 末尾的 ;
但这也无济于事。
正如您提到的,您正在使用 DirectAdmin,我建议您使用 Nginx - Apache Reverse proxy.
首先确保你有 custombuild 2

cd /usr/local/directadmin/custombuild
./build version

您应该会看到类似于以下内容的输出:

2.0.0-RC7 (rev: 863)

还要确保 directadmin 的版本不低于 1.45.2,否则将无法运行。

/usr/local/directadmin/directadmin v

运行 使用自定义构建构建 nginx + apache 的代码:

cd /usr/local/directadmin/custombuild
./build update
./build update_da
./build set webserver nginx_apache
./build nginx_apache
./build rewrite_confs