Nginx:/etc/nginx/uwsgi_params:1 中的未知指令“uwsgi_param”

kra*_*r65 4 server nginx flask uwsgi

使用此部署教程,我正在尝试使用 Flask、uWSGI 和 Nginx 启动并运行 Ubuntu 12.04 服务器。我现在无法运行 Nginx。当我尝试(重新)启动 nginx 时,它只是说...fail!,当我运行测试(使用sudo nginx -t)时,它说:

nginx: [emerg] unknown directive "uwsgi_param" in /etc/nginx/uwsgi_params:1
nginx: configuration file /etc/nginx/nginx.conf test failed
Run Code Online (Sandbox Code Playgroud)

我没有更改该文件中的任何内容,因此其内容是默认内容:

uwsgi_param     QUERY_STRING            $query_string;
uwsgi_param     REQUEST_METHOD          $request_method;
uwsgi_param     CONTENT_TYPE            $content_type;
uwsgi_param     CONTENT_LENGTH          $content_length;

uwsgi_param     REQUEST_URI             $request_uri;
uwsgi_param     PATH_INFO               $document_uri;
uwsgi_param     DOCUMENT_ROOT           $document_root;
uwsgi_param     SERVER_PROTOCOL         $server_protocol;
uwsgi_param     UWSGI_SCHEME            $scheme;

uwsgi_param     REMOTE_ADDR             $remote_addr;
uwsgi_param     REMOTE_PORT             $remote_port;
uwsgi_param     SERVER_PORT             $server_port;
uwsgi_param     SERVER_NAME             $server_name;
Run Code Online (Sandbox Code Playgroud)

我的服务器定义/etc/nginx/sites-available/www如下所示:

server {
    listen 8080;
    server_name myapp;

    root /var/www/myapp;
    try_files $uri @uwsgi;
    location @uwsgi {
        include uwsgi_params;
        uwsgi_pass unix:/tmp/myapp.sock;
    }
}
Run Code Online (Sandbox Code Playgroud)

有谁知道我在这里做错了什么?这为什么不运行?欢迎所有提示!

小智 5

对我来说修复很简单:

sudo apt-get install nginx-full
Run Code Online (Sandbox Code Playgroud)