我刚刚在 Ubuntu 14.04 LTS 64 位服务器上安装了 Nginx 1.6.0、MySQL、PHP-FPM 5.5.9 和 phpMyAdmin。当我转到 domain.tld/phpmyadmin 时,我最终进入了一个空白页,但是当我查看源代码时,我可以看到 HTML 登录表单、javascript 和其他所有内容,尽管页面是空白的。
我已经关注了指导并且普通的 PHP 脚本可以正常工作。一个回显“hello”的简单 PHP 脚本可以完美运行。/var/log/nginx/error.log 或 access.log 中没有错误。这是我的 nginx 配置:
server {
listen 8081 default_server;
#listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.php index.html index.htm;
# Make site accessible from http://localhost/
server_name localhost;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules
}
# Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
#location /RequestDenied {
# proxy_pass http://127.0.0.1:8080;
#}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.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$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# With php5-cgi alone:
#fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
如果您需要更多信息,请告诉我。如上所述,error.log 是空白的。
答案1
你的 HTML 头部莫名其妙地包含以下内容:
<style>html{display: none;}</style>
它的作用正如您所想的那样:关闭整个文档的显示。
如果您没有将其放入其中,请向放入该内容的人寻求帮助。
答案2
我遇到了同样的问题;更改$cfg['AllowThirdPartyFraming']
配置解决了这个问题。它是在浏览器上禁用 js。请参阅https://github.com/zixtor/phpmyadmin/commit/c1e8834e44f110aca736e49a6def3e4c11015879