Open_basedir restriction

发表于:2007-07-04来源:作者:点击数: 标签:
I get an 'open_basedir restriction in effect. File is in wrong directory...' . What's wrong? There are several things that could cause this. a) This could be the PHP 4.2.3 BUG described below. To solvethis, rewrite the Ez3 write routines or
I get an 'open_basedir restriction in effect. File is in wrong directory...'. What's wrong?

There are several things that could cause this.

a) This could be the PHP 4.2.3 BUG described below. To solvethis, rewrite the Ez3 write routines or convince the provider toupgrade to php 4.3.

More info:
http://bugs.php.net/bug.php?id=19292
http://www.faqts.com/knowledge_base/view.phtml/aid/18472

b) It could also mean that you have PHP safe mode on. Tryswitching safe mode off. Safe mode is a general PHP setting. If you areon a shared environment, you will have to talk to your ISP on this.

Even though the safe mode does not affect the open_basedir directive, safe mode can cause this type of errors.

c) open_basedir wrongly configured.

Change the configuration of open_basedir option in php.ini (see this thread). Find in the /etc/php.ini file the open_basedir option. If the open_basedir looks like this

/path/to/www/root/

then this is wrong. It must be the following:

Windows

;path;to;www;root;

ALL other Operating Systems

:path:to:www:root:

Sounds strange but it may work (tested with php-4.2.3). You might want to do some backup reading in the php manual on configuration.

Change openbase_dir only for one specific vhost of Apache

You can either choose between a specific directory or no directory (value "none")

<VirtualHost 217.160.187.131:80>
ServerName mydomain.de
DocumentRoot /home/www/web3/html
User web3
Group webuser
php_admin_value upload_tmp_dir /home/www/web3/phptmp/
php_admin_value open_basedir none
RewriteEngine On
RewriteRule !.(gif|css|jpg|png|jar)$ /index.php
</VirtualHost>

原文转自:http://www.ltesting.net