OpenPNE3で画像がアップロード出来ない
■パーミッションの設定が間違っている
そんなときは、公開ディレクトリの「uploads」以下のパーミッションを、すべて「777」にする。
■公開ディレクトリの設定が間違っている
symfonyの公開ディレクトリの設定はデフォルトでは「web/」である。
しかし、これを理解せずに公開ディレクトリを「httpdocs/」などとしインストールを進めると、アップロードした写真が、「web/」配下に保存され、当然ながら公開ディレクトリとは異なるため、写真が表示されなくなる。
対策:symfonyにおける公開ディレクトリ名の変更
公開ディレクトリ名が「httpdocs」の場合
<?php
# FROZEN_SF_LIB_DIR: /private/tmp/symfony/lib
require_once dirname(__FILE__).'/../lib/symfony/autoload/sfCoreAutoload.class.php';
sfCoreAutoload::register();
class ProjectConfiguration extends sfProjectConfiguration
{
public function setup()
{
$this->enableAllPluginsExcept(array('sfCompat10Plugin'));
$this->setIncludePath();
}
public function setIncludePath()
{
sfToolkit::addIncludePath(array(
//PEAR
dirname(__FILE__).'/../lib/vendor/PEAR/',
));
}
}
上述の「config/ProjectConfiguration.class.php」を以下のように変更する。
<?php
# FROZEN_SF_LIB_DIR: /private/tmp/symfony/lib
require_once dirname(__FILE__).'/../lib/symfony/autoload/sfCoreAutoload.class.php';
sfCoreAutoload::register();
class ProjectConfiguration extends sfProjectConfiguration
{
public function setup()
{
$this->enableAllPluginsExcept(array('sfCompat10Plugin'));
$this->setIncludePath();
$this->setWebDir($this->getRootDir() . '/httpdocs');
}
public function setIncludePath()
{
sfToolkit::addIncludePath(array(
//PEAR
dirname(__FILE__).'/../lib/vendor/PEAR/',
));
}
}
追記したのは、11行目部分の以下の記述。
$this->setWebDir($this->getRootDir() . '/httpdocs');
そして以下のコマンドでOpenPNEを再インストールする。
./symfony openpne:migrate
参考
- http://www.symfony-project.org/cookbook/1_2/ja/directory_structure
- http://symfony.xrea.jp/1.1/book/19-Mastering-Symfony-s-Configuration-Files.html
別解:サーバ設定におけるWeb公開ディレクトリ名の変更
どちらかというと美しくない方法ではあるが、サーバ設定で変更する方法も考えられる。
DocumentRoot /var/www/vhosts/「ドメイン」/subdomains/「ドメイン」/httpdocs
<Directory /var/www/vhosts/「ドメイン」/subdomains/「ドメイン」/httpdocs>
httpd.confやhttpd.include(Plesk)ファイルの上述の部分を以下のように編集
DocumentRoot /var/www/vhosts/「ドメイン」/subdomains/「ドメイン」/web
<Directory /var/www/vhosts/「ドメイン」/subdomains/「ドメイン」/web>
■その他
symfony側のバグという可能性もある。
TrackBack URL :
Comments (2)
symfonyテ猶HP [LL繝輔Ξ繝シ繝繝ッ繝シ繧ッBooks] (LL繝輔Ξ繝シ繝繝ッ繝シ繧ッBOOKS # 3)
symfonyテ猶HP [LL繝輔Ξ繝シ繝繝ッ繝シ繧ッBooks] (LL繝輔Ξ繝シ繝繝ッ繝シ繧ッBOOKS # 3)
蜀ョケ縺ッ邁。貎斐〒繧医¥縺セ縺ィ縺セ縺」縺ヲ縺k縺後√し繝ウ繝励Ν繧ウ繝シ繝峨繝…
トラックバック by 繧ゅ⊂縺ェ繧ゅ↑譖ク謌ソ — 2009 年 4 月 21 日 @ 11:09 AM
すみません。文字化けしちゃってるのですが…
所要でしたらお手数ですが再度、ご投稿をお願いいたします。。。
コメント by admin — 2009 年 4 月 21 日 @ 11:16 AM