Nginx“auto .dev”设置无法正确加载 WordPress
Posted
技术标签:
【中文标题】Nginx“auto .dev”设置无法正确加载 WordPress【英文标题】:Nginx "auto .dev" setup won't load WordPress properly 【发布时间】:2014-05-13 15:58:23 【问题描述】:按照本指南 (http://blog.evan.pro/how-to-set-up-dynamic-virtual-hosts-for-web-development),我正在尝试设置一个 localhost / nginx 配置,它允许我轻松运行环境,而无需为每个环境添加单独的条目(在 dnsmasq 的帮助下)。 当我运行 nginx 并通过 sitename.dev 访问任一站点时,使用 WordPress 的站点似乎没有运行。我想我在 nginx 配置中缺少一些东西,
worker_processes 1;
error_log /usr/local/etc/nginx/logs/error.log debug;
events
worker_connections 1024;
http
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /usr/local/etc/nginx/logs/access.log main;
sendfile on;
keepalive_timeout 65;
index index.html index.php;
server
listen 80;
server_name .dev;
# dynamic vhosts for development
set $basepath "/var/www";
set $domain $host;
if ($domain ~ "^(.*)\.dev$")
set $domain $1;
set $rootpath "$domain";
if (-d $basepath/$domain/public)
set $rootpath "$domain/public";
if (-d $basepath/$domain/httpdocs)
set $rootpath "$domain/httpdocs";
if (-d $basepath/$domain/web)
set $rootpath "$domain/web";
if (-f $basepath/$domain/index.php)
set $rootpath $domain;
if (-f $basepath/$domain/index.html)
set $rootpath $domain;
root $basepath/$rootpath;
# enable PHP
index index.php app.php index.html;
location /
index index.php;
error_page 404 = @indexphp;
include /usr/local/etc/nginx/conf.d/php-fpm;
try_files $uri $uri/ /index.php?$args;
location @indexphp
rewrite ^(.*)$ /index.php$1;
location ~ ^(.+\.php)(?:/.+)?$
expires off;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
# block .ht* access
location ~ /\.ht
deny all;
例如,访问 mynewproject.dev 给我一个 200 OK 但没有加载任何内容。访问不使用 WordPress(但使用 PHP 等服务器语言)的 someotherproject.dev,我看到该站点正确显示。
【问题讨论】:
您使用的是 Ubuntu 吗?哪个版本 哦,对不起。 OSX(特立独行) 我刚刚在我的 CentOS 上对其进行了测试,它在 WordPress 安装中按预期工作 - 我只删除了include /usr/local/etc/nginx/conf.d/php-fpm;
行和与日志记录相关的行。我还在fastcgi_pass
中使用套接字而不是 tcp。
【参考方案1】:
检查以下内容
1) 如果您在文件夹中使用过 wordpress,则必须将其附加到您的设置 $basepath "/var/www";
2) 发布您的错误日志。
【讨论】:
以上是关于Nginx“auto .dev”设置无法正确加载 WordPress的主要内容,如果未能解决你的问题,请参考以下文章
nginx设置反向代理后端jenklins,页面上的js css文件无法加载
更改单元格中的数据后,UITableView 中的自定义单元格将无法正确重新加载