centos7yum 安装 phpmyadmin 后,无法显示 phpmyadmin 和 PHP 的安装信息?在线等

2018-04-13 19:04:53 +08:00
 kmdd33

配置环境:centos7,openresty,mariadb

(安装背景:phpmyadmin 是 yum 安装的,php 是编译安装的)

服务器测试地址:

http://104.131.43.152/test.html

http://104.131.43.152/phpmyadmin

http://104.131.43.152/info.php

目前服务器安装的状态:

php -v

PHP 7.2.4 (cli) (built: Mar 27 2018 17:23:35) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.4, Copyright (c) 1999-2018, by Zend Technologies You have new mail in /var/spool/mail/root

mariadb 显示是激活的状态。

nginx.conf,info.php ,test.html,错误日志等大量配置图片请看我在 sf 上发的帖子地址是: https://segmentfault.com/q/1010000014312298

请教伙伴们的是:

1.我输入 http://104.131.43.152/info.php 的时候,为什么这个文件会自动下载,而不是显示 php 的版本信息? test.html 可以显示里面的文本信息,但是也无法显示 php 版本信息。

2.phpmyadmin 配置哪里出错了吗?如何在 openresty ( nginx )下,如何正确配置 phpmyadmin ?

1508 次点击
所在节点    程序员
8 条回复
julyclyde
2018-04-13 20:02:47 +08:00
1 info.php 被下载说明你没配置好 www 服务器; test.html *当然不能* 显示 php 版本信息
explore365
2018-04-14 00:53:47 +08:00
nginx 没添加 php 的配置
kmdd33
2018-04-14 01:27:59 +08:00
@julyclyde 请问如何配置 www 服务器?
@explore365 nginx 里面如何添加 php 的配置?在 nginx.conf 里面添加吗?
kmdd33
2018-04-14 01:31:08 +08:00
@explore365 2 位能否看下我在 sf 里面发的截图配置?谢谢。https://segmentfault.com/q/1010000014312298
kmdd33
2018-04-14 02:07:27 +08:00
http://104.131.43.152/info.php 目前这个显示正常了,http://104.131.43.152/phpmyadmin 还是无法显示入口
julyclyde
2018-04-15 23:01:41 +08:00
@kmdd33 nginx 网站上就有。你拒绝学习,我们也没办法
Hardrain
2018-04-17 09:51:51 +08:00
php-cli 和 php-fpm 不是一回事,nginx 需要后者,因为它能通过 FastCGI 被调用。

此外,PHP 建议你用软件源安装,你自己编译的八成没把 FPM 编译进去;要不就是 nginx 的 server block 里压根没配置 php-fpm

建议你检索一下"CentOS nginx PHP FPM",这问题很容易解决。
Hardrain
2018-04-17 10:03:39 +08:00
还是给你个参考吧:
1. 这个放在`server{}`这个 block 里
此例中,PHP-FPM 监听 tcp://127.0.0.1:9000
如使用 Unix socket,把后两行的注释反过来即可。
```
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
```
2. {nginx_root}/snippets/fastcgi-php.conf 的内容:
```
# regex to split $uri to $fastcgi_script_name and $fastcgi_path
fastcgi_split_path_info ^(.+\.php)(/.+)$;

# Check that the PHP script exists before passing it
try_files $fastcgi_script_name =404;

# Bypass the fact that try_files resets $fastcgi_path_info
# see: http://trac.nginx.org/nginx/ticket/321
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;

fastcgi_index index.php;
include fastcgi.conf;
```
3. {nginx_root}/fastcgi.conf 的内容:
```
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;

fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;

fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
```

以上是 nginx 连接 php-fpm 的方法,{nginx_root}一般是 /etc/nginx,也就是 nginx.conf 所在的目录。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/446625

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX