私はこの奇妙なことを起こしています。ローカルで開発している Zend Framework (PHP) Web アプリケーションは自分のコンピューターでは正常に動作しますが、サーバーにアップロードすると、アップロード ディレクトリが存在しないと見なされます。
私のアプリケーションには、アプリケーション外のディレクトリへのシンボリックリンクであるアップロード ディレクトリがあります。
#local
/myapp.local
/application
/data
/uploads (symlink, points to ./../../shared_uploads)
/public/index.php
/shared_uploads
#remote
/shared_uploads
/current (symlink, points to ./releases/myapp-2009-12-18)
/releases
/myapp-2009-12-18
/application
/data
/uploads
/public/index.php
サーバーは、アプリケーションを提供するために を指し/current/public/index.php
ます。実際にはreleasesディレクトリにあるので、1レベル深いのでしょうか? それとも、サーバーではなくローカル コンピューターにアップロード シンボリック リンクを作成したため、アクセス許可エラーでしょうか?
更新:私の/public/index.php
ファイルでは、アップロード ディレクトリを次のように定義しています。
// Define path to uploads directory
defined('APPLICATION_UPLOADS_DIR')
|| define('APPLICATION_UPLOADS_DIR', realpath(dirname(__FILE__) . '/../data/uploads'));