2017-07-08 5 views
0

サーバ(Ubuntu 16.04、PHP 7.0.18)にSymfony3プロジェクトをデプロイします。 私はVestaCPを使用し、symlinl public_shtml -> www/webを作成し、プロジェクトをwwwディレクトリに配置します。VestaCP:app/autoload.phpを使用しているときのopen_basedirの制限

私は、次のコマンドを実行します。

PHP Warning: require(): open_basedir restriction in effect. File(/home/admin/web/project/www/app/autoload.php) is not within the allowed path(s): (/home/admin/web/project/public_shtml:/home/admin/tmp) in /home/admin/web/project/www/web/app.php on line 6

PHP Warning: require(/home/admin/web/project/www/app/autoload.php): failed to open stream: Operation not permitted in /home/admin/web/project/www/web/app.php on line 6

PHP Fatal error: require(): Failed opening required '/home/admin/web/project/www/web/../app/autoload.php' (include_path='.:/usr/share/php') in /home/admin/web/project/www/web/app.php on line 6

  • gitのクローン
  • は、私はそのメッセージを参照してくださいエラーログに(symfony公式サイトのドキュメントから)
  • は、setfacl

を作曲をインストール

Wh私は間違っているのですか?

+0

https://stackoverflow.com/questions/1846882/open-basedir-restriction-in-effect-file-is-not-within-the-allowed-pathsの可能な複製 –

+0

可能な複製の[open \ _basedir restriction事実上。ファイル(/)が許可されたパス内にない:](https://stackoverflow.com/questions/1846882/open-basedir-restriction-in-effect-file-is-not-within-the-allowed-パス) – Icepickle

答えて

0

あなたは、新しく作成したフォルダ/home/admin/web/project/wwwを指すようにApacheの設定で(/home/admin/conf/web/apache2.conf/home/admin/conf/web/sapache2.confを)open_basedirパラメータを変更する必要があります。

<Directory /home/admin/web/project/www/web> 
    AllowOverride All 
    Options +Includes -Indexes +ExecCGI 
    php_admin_value open_basedir /home/admin/web/project/www:/home/admin/tmp 
    php_admin_value upload_tmp_dir /home/admin/tmp 
    php_admin_value session.save_path /home/admin/tmp 
</Directory> 

VestaCPは、より安全なデフォルト設定を行うことopen_basedir制限を使用しています。

サーバにさらにウェブサイトを追加する予定がある場合は、symfonyプロジェクトの特別なApache設定テンプレートをパス/usr/local/vesta/data/templates/web/apache2/に作成することをお勧めします。デフォルトテンプレートdefault.tpldefault.stplを新しいファイルsymfony.tplsymfony.stplとしてコピーし、open_basedir,DocumentRootDirectoryのパラメータを変更することができます。もしあなたがそれをしないなら、あなたのユーザのサイトの設定を追加/更新したたびに、VestaCPはデフォルトのテンプレートを使ってあなたの現在の設定を新しい生成された設定に置き換え、再度編集する必要があります。

関連する問題