Side Note: It appears the forum is down.http://forum.nginx.org says,
“The database connection failed. Please check your database
configuration
in include/db/config.php. If the configuration is okay, check if the
database server is running.”
That’s not what ^~ means.
The manual says, “If the longest matching prefix location has the “|^~|”
modifier then regular expressions are not checked”. Which means that a
^~ location will have a higher priority than a regular expression rule,
right?
What request do you make?
Which one of the above locations does the request match?
What output do you expect?
What output do you get?
First rule:
location ^~ /wordpress/ {
try_files $uri /wordpress/index.php =404;
}
What I intend: “If the URL starts with “/wordpress/”, then do not check
any regular expression rules. Instead, load the requested URI directly.”
What happens: when visiting “wordpress/” I get a blank page.
The Log:
2014/04/30 02:39:06 [debug] 27354#0: post event 00007F68E8FD9010
2014/04/30 02:39:06 [debug] 27354#0: delete posted event
00007F68E8FD9010
2014/04/30 02:39:06 [debug] 27354#0: accept on 0.0.0.0:80, ready: 1
2014/04/30 02:39:06 [debug] 27354#0: posix_memalign:
0000000000E79F90:256 @16
2014/04/30 02:39:06 [debug] 27354#0: *5 accept: [REMOVED MY IP] fd:9
2014/04/30 02:39:06 [debug] 27354#0: *5 event timer add: 9:
20000:1398825566351
2014/04/30 02:39:06 [debug] 27354#0: *5 reusable connection: 1
2014/04/30 02:39:06 [debug] 27354#0: *5 epoll add event: fd:9 op:1
ev:80000001
2014/04/30 02:39:06 [debug] 27354#0: accept() not ready (11: Resource
temporarily unavailable)
That’s it, no error.
Second Problem Rule:
I have updated this rule to be a regex rule:
llocation ~ ^/(wp-(content|admin|includes).*) {
try_files /wordpress/$1 /wordpress/$1/index.php =404;
}
What I intend: “If /wp-content followed by anything, or /wp-admin
followed by anything, or /wp-includes followed by anything: Silently (no
browser redirect) show the same URL as if a /wordpress/ directory were
inserted in front. ie. “/wp-admin/bob” becomes
“/wordpress/wp-admin/bob/”, but does not do a redirect. If a directory,
load index.php inside the given directoy.”
What happens: I visit /wp-admin/ and get wp-admin.php, dumped as plain
text.
It’s not passing to PHP.
But I have a PHP block:
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}
So it should be passing to PHP?