Hi,

I'm trying to set up WordPress in a subdir on an Nginx+PHPFPM setup.

I'm running

  nginx/1.14.0
  PHP 7.2.4-dev (fpm-fcgi)
  wordpress/4.9.5

The skeleton I have so far is

        tree -L 3 .
        .
        ├── includes
        │   └── front.inc
        ├── public
        │   ├── css
        │   │   ├── global.css
        │   │   └── min
        │   └── index.php
        └── wp
            ├── composer.json
            ├── composer.lock
            ├── public
            │   ├── blog
            │   ├── content
            │   ├── index.php
            │   └── wp-config.php
            ├── README.md
            └── vendor
                ├── autoload.php
                ├── composer
                └── johnpbloch

WP was populated into the tree using Composer

My Nginx web config includes

        server {

                root /src/www/test/public;
                index index.php;

                rewrite_log on;
                access_log  /var/log/nginx/test.example.com.access.log main;
                error_log   /var/log/nginx/test.example.com.error.log error;


                ssl on;
                ssl_verify_client off;
                include includes/ssl_protocol.inc;
                ssl_trusted_certificate   "ssldir/myCA.crt.pem";
                ssl_certificate           "ssldir/test.example.com.crt.pem";
                ssl_certificate_key       "ssldir/test.example.com.key.pem";

                location ~* /(\.|~$) { deny all; }
                location ~* (settings.php|schema|htpasswd|password|config) { 
deny all; }
                location ~* .(inc|rb|json)$ { deny all; }

                location ^~ /blog {
                        alias /src/www/test/wp/public/blog;
                        index index.php;

                        try_files $uri $uri/ /index.php$is_args$args;
        #               try_files $uri $uri/ /index.php?$args =404;

                        location ~ \.php$ {
                                fastcgi_split_path_info ^(.+?\.php)(/.*)$;
                                fastcgi_param HTTP_PROXY "";
                                fastcgi_pass phpfpm;
                                fastcgi_index index.php;
                                include includes/fastcgi/fastcgi_params;
                        }
                }

                location ~ [^/]\.php(/|$) {
                        fastcgi_split_path_info ^(.+?\.php)(/.*)$;
                        if (!-f $document_root$fastcgi_script_name) {
                                return 404;
                        }
                        fastcgi_param HTTP_PROXY "";
                        fastcgi_pass phpfpm;
                        fastcgi_index index.php;
                        include includes/fastcgi/fastcgi_params;
                }
                ...
        }

and

        grep -i script includes/fastcgi/fastcgi_params 
                fastcgi_param  SCRIPT_FILENAME    
$document_root$fastcgi_script_name;
                fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;

With that config visiting the TOP level of my site

        https://test.example.com/

works like it should.

But visiting the WP app in the /blog subdir alias

        https://test.example.com/blog/

shows these errors in log


        ==> /var/log/nginx/test.example.com.error.log <==
        2018/04/29 13:10:16 [error] 6374#6374: *4 FastCGI sent in stderr: 
"Primary script unknown" while reading response header from upstream, client: 
172.30.11.7, server: test.example.com, request: "GET /blog/ HTTP/2.0", 
upstream: "fastcgi://unix:/var/run/php-fpm.sock:", host: "test.example.com"

        ==> /var/log/nginx/test.example.com.access.log <==
        172.30.11.7 test.example.com - [29/Apr/2018:13:10:16 -0700] GET /blog/ 
HTTP/2.0 "404" 20 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 
Firefox/60.0" "-"

I _think_ that the problem might be that I have to have a different 
SCRIPT_FILENAME for the WP part of this.

Not sure IF that's the problem, or what to change it TO.

Any help?

Thanks,

AC



_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx

Reply via email to