我尝试在我的 archilnux 机器上安装 phpmyadmin 来与 nginx 配合使用,但似乎遇到了一些问题。以下步骤正是我所做的:
sudo pacman -S phpmyadmin
然后我创建一个符号链接,使用方式与维基百科:
sudo ln -s /usr/share/webapps/phpMyAdmin /srv/http/<domain>/public_html/phpmyadmin
卷曲返回:
curl -I http://localhost/phpmyadmin
HTTP/1.1 301 Moved Permanently
Server: nginx/1.0.5
Date: Tue, 16 Aug 2011 16:57:54 GMT
Content-Type: text/html
Content-Length: 184
Location: http://localhost/phpmyadmin/
Connection: keep-alive
当我尝试通过 chromium 访问时收到的信息:
Server error
The website encountered an error while retrieving http://localhost/phpmyadmin/. It may be down for maintenance or configured incorrectly.
Here are some suggestions:
Reload this webpage later.
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.
错误日志:
2011/08/17 02:42:48 [error] 31015#0: *1 FastCGI sent in stderr: "PHP Warning: require_once(): open_basedir restriction in effect. File(/usr/share/webapps/phpMyAdmin/libraries/common.inc.php) is not within the allowed path(s): (/srv/http/:/home/:/tmp/:/usr/share/pear/) in /usr/share/webapps/phpMyAdmin/index.php on line 33
PHP Warning: require_once(/usr/share/webapps/phpMyAdmin/libraries/common.inc.php): failed to open stream: Operation not permitted in /usr/share/webapps/phpMyAdmin/index.php on line 33
PHP Fatal error: require_once(): Failed opening required './libraries/common.inc.php' (include_path='.:/usr/share/pear') in /usr/share/webapps/phpMyAdmin/index.php on line 33" while reading response header from upstream, client: 127.0.0.1, server: localhost, request: "GET /phpmyadmin/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "localhost"
我希望有人能帮助我解决这个问题:)
可以通过以下方法解决:将 /usr/share/webapps 添加到 php.ini 中的 open_basedir :)
答案1
所以我认为很明显,
2011/08/17 02:42:48 [错误] 31015#0: *1 FastCGI 在 stderr 中发送:“PHP 警告:require_once():open_basedir 限制生效。 文件(/usr/share/webapps/phpMyAdmin/libraries/common.inc.php)不在允许的路径内:(/srv/http/:/home/:/tmp/:/usr/share/pear/) 位于 /usr/share/webapps/phpMyAdmin/index.php 第 33 行
根据 Martin F 的评论 - 检查您的 php-fpm 或 php.ini 设置以确保它可以在该路径中执行内容。