Wordpress 永久链接 - NGINX Conf(未指定输入文件错误)

Wordpress Permalinks - NGINX Conf (No input file specified Error)

这是我当前在 nginx 网络服务器上的 /etc/nginx/conf.d/default.conf 文件的设置。我有一个 Wordpress 安装,我正在尝试像这样使用漂亮的永久链接结构:http://XXX.XXX.XX.X/kiosks/%postname%/

当前收到 "No input file specified." 错误。下面是我的 default.conf:

#
# The default server
#
server {
    listen       80;
    server_name example.com;

    root   /usr/share/nginx/html;
    # location / {
    #     root   /usr/share/nginx/html;
    #     index index.php  index.html index.htm;
    # }
    location /kiosks {
        index index.php  index.html index.htm;
        try_files $uri $uri/index.php?$args;
    }   

    error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root           /usr/share/nginx/html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        # fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
        fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
        include        fastcgi_params;
    }
}

解决方案:

#
# The default server
#
server {
    listen       80;
    server_name example.com;

    root   /usr/share/nginx/html;
    # location / {
    #     root   /usr/share/nginx/html;
    #     index index.php  index.html index.htm;
    # }
    location @wp {
        rewrite ^/kiosks(.*) /kiosks/index.php?;
    }
    location /kiosks {
        alias "/usr/share/nginx/html/kiosks/"; #where wp actually is
        try_files $uri $uri/ @wp;

        location ~ \.php$ {
            try_files $uri =404;
            fastcgi_read_timeout 300s;
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_param  SCRIPT_FILENAME $request_filename;
            include fastcgi_params;
        }
    }
    # location /kiosks {
    #     try_files $uri $uri/index.php?$args;
    #     index index.php  index.html index.htm;
    # }   

    error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root           /usr/share/nginx/html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        # fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
        fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
        include        fastcgi_params;
    }
}