アップグレードに失敗しました

2011年1月1日 at 6:59

5.4.0.5からのアップグレードに失敗しました。
リリース前にしてみればよかったかもですが。すみません。

エラー画面は添付します。
左上付近に、PHPのエラーが見えます。

試してみることがありましたら言っていってください。
自動アップグレードできるまでがんばってみます。

ちなみに、以下の説明文の「更新」タブは、「サイト全体の設定」ではなく「システム&メンテナンス」では。
http://concrete5-japan.org/help/install/how_to_upgrade/

サーバーは、DTIのVPSサーバー。環境は自分で作成しました。
OSは、CentOS5です。

updatesフォルダは、以下のとおり、書き込み処理してます。

-----------------
drwxrwxrwx 2 tomo tomo 4096 Jun 14 2010 updates
-----------------

unzipは、以下のとおり入っています。

-----------------
# rpm -q unzip
unzip-5.52-3.el5
#
-----------------

cURLは、以下のとおり入っています。
-----------------
# concrete5 Version
5.4.0.5

# concrete5 Packages
PHP block by ND (1.0), Solutions Theme (1.0), SQL Buddy (1.0), Whitespace Theme (1.0), Zoom Image (1.0.1).

# concrete5 Overrides
languages/ja_JP.UTF8

# サーバーソフト
Apache/2.2.3 (CentOS)

# サーバーAPI
apache2handler

# PHPバージョン
5.2.16

# PHP Extensions
apache2handler, bcmath, bz2, calendar, ctype, curl, date, dba, dbase, dom, exif, filter, ftp, gd, gettext, gmp, hash, iconv, imap, json, ldap, libxml, mbstring, mcrypt, mhash, mssql, mysql, mysqli, ncurses, odbc, openssl, pcre, PDO, pdo_dblib, pdo_mysql, PDO_ODBC, pdo_pgsql, pdo_sqlite, pgsql, posix, pspell, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, zip, zlib.

# PHP Settings
log_errors_max_len - 1024
max_execution_time - 30
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 60
memory_limit - 32M
post_max_size - 8M
safe_mode - Off
safe_mode_exec_dir - <i>no value</i>
safe_mode_gid - Off
safe_mode_include_dir - <i>no value</i>
sql.safe_mode - Off
upload_max_filesize - 2M
mssql.max_links - Unlimited
mssql.max_persistent - Unlimited
mssql.max_procs - Unlimited
mssql.textlimit - Server default
mysql.max_links - Unlimited
mysql.max_persistent - Unlimited
mysqli.max_links - Unlimited
odbc.max_links - Unlimited
odbc.max_persistent - Unlimited
pcre.backtrack_limit - 100000
pcre.recursion_limit - 100000
pgsql.max_links - Unlimited
pgsql.max_persistent - Unlimited
session.cache_limiter - nocache
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5
safe_mode_allowed_env_vars - PHP_
safe_mode_protected_env_vars - LD_LIBRARY_PATH
-----------------

添付: Image1.jpg

Re: VPS、専用サーバーで自動アップグレードに失敗した時

2011年1月1日 at 16:41
おっと、アップグレードページのご指摘ありがとうございました。
徹夜明けだったので、適当です。



自動アップグレードですね
幾つか考えられます。
root権限を持つ他の方向けに、いくつかのトラブルシューティングを書いておきます。

・unzip のパス
・memory_limit
・files/tmp と updatesの権限

あと、エラーが発生した文章ですが、ちょっとツールバーで隠れちゃいましたね・・・。

そのページの HTMLソースを直接見ると、きちんとしたエラー文がプリントされていると思うので、どの部分のエラーだったのかが、詳しく分かれば、もっと分かると思います。

━━━━━━━━━━━━━━━━━━━━
■ unzip のパス
━━━━━━━━━━━━━━━━━━━━

念の為に、zip、unzip のパスの確認をお願いします。
マーケットプレイスを利用されているのであれば、確認の必要はありません・・・。

concrete5 では、

/usr/bin/unzip

を unzip の保存先としています。
それでなければ

define('DIR_FILES_BIN_UNZIP', '新しいパス');


を/config/site.php の1行に入れてみてください。




━━━━━━━━━━━━━━━━━━━━
■ memory_limit や post_ の値
━━━━━━━━━━━━━━━━━━━━

そして、memory_limit の値が32Mなのが気になります。
んで、64M。そして128MBまで増やしてみていただけませんか?
ちなみに、この concrete5 Japan サイトの memory_limit は256MBまで許可してます。

php の他の設定は、問題ありません。




━━━━━━━━━━━━━━━━━━━━
■ ファイルの所有者 (PHPモジュールモード)
━━━━━━━━━━━━━━━━━━━━

VPSや専用サーバーで運用されている方は FastCGI、 PHP CGIモードではなくて、モジュールとしてPHPを走らせている場合があります。chmod 777 にしないと PHP が走らない方がおそらくそうです。

その場合、root 権限からディレクトリーやファイルのグループ所有者を apache & apache (デフォルトではこう)に chown されることをお勧めします。

こうすると、 chmod 777 する必要はなく chmod 755 で大丈夫になり、セキュリティー的にも安心です。

変更すべきディレクトリーは

/files/
/config/
/sitemap.xml
/updates/

そして、マーケットプレイスの自動ダウンロード機能を運用したければ

/packages/

ディレクトリーのグループ・オーナーを apache: apache にされることをおすすめします。




VPS、専用サーバーなどで、CentOSで考えられる問題はこんな感じです。

この concrete5 Japan サイトも CentOS + Plesk で運用しています。

# concrete5 バージョン
5.4.1.1

# concrete5 パッケージ

# concrete5 オーバーライド
languages/ja_JP, languages/ja_JP.UTF8

# サーバーソフト
Apache/2.2.3 (CentOS)

# サーバーAPI
apache2handler

# PHPバージョン
5.2.6

# PHP エクステンション
apache2handler, apc, bz2, calendar, ctype, curl, date, dbase, dom, exif, filter, ftp, gd, gettext, gmp, hash, iconv, imap, ionCube Loader, json, ldap, libxml, mbstring, mcrypt, mhash, mysql, mysqli, ncurses, odbc, openssl, pcre, PDO, pdo_mysql, PDO_ODBC, pdo_sqlite, posix, pspell, Reflection, session, shmop, SimpleXML, snmp, sockets, SPL, standard, sysvmsg, sysvsem, sysvshm, tokenizer, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, zip, zlib.

# PHP 設定
log_errors_max_len - 1024
max_execution_time - 5
max_input_nesting_level - 64
max_input_time - 180
memory_limit - 256M
post_max_size - 8M
safe_mode - Off
safe_mode_exec_dir - <i>no value</i>
safe_mode_gid - Off
safe_mode_include_dir - <i>no value</i>
sql.safe_mode - Off
upload_max_filesize - 2M
apc.max_file_size - 1M
mysql.max_links - Unlimited
mysql.max_persistent - Unlimited
mysqli.max_links - Unlimited
odbc.max_links - Unlimited
odbc.max_persistent - Unlimited
pcre.backtrack_limit - 100000
pcre.recursion_limit - 100000
session.cache_limiter - nocache
session.gc_maxlifetime - 7200
safe_mode_allowed_env_vars - PHP_
safe_mode_protected_env_vars - LD_LIBRARY_PATH
 

Re: Re: VPS、専用サーバーで自動アップグレードに失敗した時

2011年1月1日 at 18:22
ありがとうございました。無事できました。

/files/tmp のアクセス権の問題でした。

この症状、普通のレンタルサーバでは問題ないとおもいます。

私は、自分でapache(httpd)の設定をしているのでそうなったんだと思います。