bet*_*eta 5 php wordpress nginx fpm
我想在域的子文件夹中安装wordpress博客。我用nginx。访问博客的网址应如下所示:example.com/blog
站点配置如下所示:
server {
listen 80;
listen [::]:80;
root /var/www/example.com/html;
index index.php index.html index.htm index.nginx-debian.html;
server_name example.com www.example.com;
location /blog {
alias /var/www/example.comblog/html;
index index.php;
try_files $uri $uri/ /blog/index.php?q=$uri&$args;
}
location ~ /blog/.+\.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
Run Code Online (Sandbox Code Playgroud)
wordpress文件位于该文件夹中
/var/www/example.comblog/html。访问时example.com/blog,浏览器显示404错误。
在/etc/php5/fpm/php.ini我改编这个:cgi.fix_pathinfo=0
nginx版本:nginx / 1.6.2
/var/log/nginx/error.log 没有显示任何感兴趣的内容
更新1:
将错误日志记录设置为调试后,(其中包括)以下几行。也许这会有所帮助:
open index "/var/www/example.comblog/html/index.php"
internal redirect: "/blog/index.php?"
rewrite phase: 1
test location: "/blog"
test location: ~ "/blog/.+\.php$"
using configuration "/blog/.+\.php$"
http script var: "/blog/index.php"
trying to use file: "/blog/index.php" "/var/www/example.com/html/blog/index.php"
Run Code Online (Sandbox Code Playgroud)
内部重定向似乎不正确?在最后一行应该是/var/www/example.comblog/html/blog/index.php而不是/var/www/example.com/html/blog/index.php。我怀疑这是使用404的原因。因为在index.php中不存在/var/www/example.com/html/blog/index.php。
更新2:
好的,将别名与try_files一起使用似乎存在着长期的问题。
| 归档时间: |
|
| 查看次数: |
169 次 |
| 最近记录: |