在安装 apache、php 和 phpmyadmin 之后,我正在配置一个新的 vps (Debian 7)。我现在正在尝试安装 roundcube,但在尝试在线访问它时,我得到一个空白页面,其中显示消息 “未指定输入文件。”
。
我在日志中收到以下错误:
mod_fcgid: stderr: PHP Warning: Unknown: failed to open stream: Operation not permitted in Unknown on line 0
mod_fcgid: stderr: PHP Warning: Unknown: open_basedir restriction in effect. File(/usr/share/roundcube/index.php) is not within the allowed path(s): (/var/www/clients/client0/web1/web:/var/www/clients/client0/web1/private:/var/www/clients/client0/web1/tmp:/var/www/site.com/web:/srv/www/site.com/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin) in Unknown on line 0
我试图在 php.ini
和 apache 的 conf 文件中禁用 open_basedir
但我仍然遇到此错误(我重新启动了 apache)。也许 open_basedir 不是问题;许可,符号链接(symbolic link)?
apache.conf:
# Those aliases do not work properly with several hosts on your apache server
# Uncomment them to use it or adapt them to your configuration
# Alias /roundcube/program/js/tiny_mce/ /usr/share/tinymce/www/
# Alias /roundcube /var/lib/roundcube
Alias /interfacewebmail /var/lib/roundcube
# Access to tinymce files
<Directory "/usr/share/tinymce/www/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Directory /var/lib/roundcube/>
Options +FollowSymLinks
php_admin_value open_basedir none
DirectoryIndex index.php
<FilesMatch "\.php[345]?$">
SetHandler fcgid-script
</FilesMatch>
FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php
FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php3
FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php4
FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php5
Options +ExecCGI
# This is needed to parse /var/lib/roundcube/.htaccess. See its
# content before setting AllowOverride to None.
AllowOverride All
order allow,deny
allow from all
</Directory>
# Protecting basic directories:
<Directory /var/lib/roundcube/config>
Options -FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/lib/roundcube/temp>
Options -FollowSymLinks
AllowOverride None
Order allow,deny
Deny from all
</Directory>
<Directory /var/lib/roundcube/logs>
Options -FollowSymLinks
AllowOverride None
Order allow,deny
Deny from all
</Directory>
最佳答案
线索在错误信息中
mod_fcgid: stderr: PHP Warning: Unknown: open_basedir restriction in effect.
File(/usr/share/roundcube/index.php) is not within the allowed path(s):
所以你需要做的是将 roundcube 路径添加到“允许”路径中
请参阅此处了解如何做到这一点 PHP open_basedir broken in Apache but works in PHP at runtime
乐: 如果你改变这个,它会有所帮助
php_admin_value open_basedir none
进入
php_admin_value open_basedir "/usr/share/roundcube/"
关于php - 安装 Roundcube 后 "No input file specified.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31142486/