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
我正在尝试在 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