1

シンボリックリンクを使用すると、apache2サーバーで問題が発生します。

ベースwwwフォルダは「/var/ www//htdocs」にあります。「/var/ www // htdocs /l/」へのシンボリックリンクフォーム/home// log "を作成し、「log」と呼びました。

私の意見では、すべての権利はwww-dataユーザーとのグループに正しく与えられています。

私のスクリプトでは、次のエラーが発生しました:

Warning: fopen(): open_basedir restriction in effect.File(/var/www/<domain>/htdocs/l/log/logs_test.log) is not within the allowed path(s): (/var/www/<domain>:/usr/share/pear:/usr/share/php:/tmp:/usr/share/phpmyadmin) in /var/www/<domain>/htdocs/l/test.php on line 7 Warning: fopen(/var/www/<domain>/htdocs/l/log/logs_test.log): failed to open stream: Operation not permitted in /var/www/<domain>/htdocs/l/test.php on line 7

この問題は、apache2.confにシンボリックリンクからの実パスを追加すると解決するはずです。しかし、これが私の問題です。すべてのシンボリックリンクに実パスを追加するわけではありません。

私の問題を理解していただければ幸いです。さらに情報が必要な場合は、お知らせください。

4

1 に答える 1

0

はい、問題は PHP の open_basedir セキュリティ制限にあります。指定したディレクトリ ツリー以外のファイルを開きたい場合は、制限を緩和する必要があります。これを行う方法のその他のオプションについては、こちらをお読みください。

http://www.php.net/manual/en/ini.core.php#ini.open-basedir

于 2013-02-08T16:36:42.697 に答える