ブログ - 最新エントリー
ローカル環境で xupdate を使って core をアップデートした後で
本番環境にDBやファイルをアップロードし
本番環境の管理画面から xupdate を呼び出したら
リロードが何度も走ったうえで白紙画面が表示されてしまった
色々調査したところ以下のような問題であった
20181220 へのアップデートによって? mainfile.php に以下のコードが挿入される
この値がセットされていないと xupdate の管理画面を表示した際に、この更新を行うためのリロードが行われる模様
mainfile.php は動作環境によって異なるので、すでにこの対処が行われたDBで、このコードが追加されていない mainfile.php を使用すると
この更新処理を実行しようとして、失敗してしまうものと思われる
本番環境の mainfile.php に、上記のコードを追加してあげれば治る
本番環境にDBやファイルをアップロードし
本番環境の管理画面から xupdate を呼び出したら
リロードが何度も走ったうえで白紙画面が表示されてしまった
/modules/xupdate/admin/index.php?action=UserPassColumnLenFix&xoops_redirect=....
色々調査したところ以下のような問題であった
20181220 へのアップデートによって? mainfile.php に以下のコードが挿入される
// Alrady fixed length of users table pass column of this DB (Auto inserts by X-update)
define('XCUBE_CORE_USER_PASS_LEN_FIXED', true);
この値がセットされていないと xupdate の管理画面を表示した際に、この更新を行うためのリロードが行われる模様
mainfile.php は動作環境によって異なるので、すでにこの対処が行われたDBで、このコードが追加されていない mainfile.php を使用すると
この更新処理を実行しようとして、失敗してしまうものと思われる
本番環境の mainfile.php に、上記のコードを追加してあげれば治る
xupdate で以下のアップデートをかけたら画面が真っ白に
CorePack 20180208 → CorePack 20181220
以下の二つのファイルのパーミッションを確認
html/modules/user/preload/Primary/EncryptPassword.class.php
xoops_trust_path/modules/xupdate/admin/actions/UserPassColumnLenFixAction.class.php
CorePack 20180208 → CorePack 20181220
以下の二つのファイルのパーミッションを確認
html/modules/user/preload/Primary/EncryptPassword.class.php
xoops_trust_path/modules/xupdate/admin/actions/UserPassColumnLenFixAction.class.php
xupdate で モジュールの更新を行おうとしたら
というエラーが出た
どうやら ftp の mkdir に失敗している模様
550 permission denied
VSFTPD の設定に問題があったみたい
/etc/vsftpd.conf で write_enable=YES にして
service vsftpd restart
して、再度実行
が出た場合は
xoops_trust_path/uploads/xupdate/xupdate.lock を削除して再実行
解凍用ディレクトリの作成または書き込みに失敗しました
というエラーが出た
どうやら ftp の mkdir に失敗している模様
550 permission denied
VSFTPD の設定に問題があったみたい
/etc/vsftpd.conf で write_enable=YES にして
service vsftpd restart
して、再度実行
他のプロセスがアップデート中です。しばらく待ってから再度実行してください。
が出た場合は
xoops_trust_path/uploads/xupdate/xupdate.lock を削除して再実行
xupdate で以下のアップデートをかけたら画面が真っ白に
CorePack 20170328 → CorePack 20180208
エラーログを見ると
html/preload/debugOnlyAdmin.class.php
が読み込めてない模様
フォルダを確認すると -rw-r----- というパーミッション
chmod go+r してあげてブラウザをリロード
無事に表示されるようになった
おそらく開発環境の PHPは mod_php で動いているため
パーミッションが足りないのだろう
サーバ環境なら fastCGI なので問題は起きないと思われるが
他のファイルに合わせて -rw-r--r-- にしておくのが吉?
CorePack 20170328 → CorePack 20180208
エラーログを見ると
html/preload/debugOnlyAdmin.class.php
が読み込めてない模様
フォルダを確認すると -rw-r----- というパーミッション
chmod go+r してあげてブラウザをリロード
無事に表示されるようになった
おそらく開発環境の PHPは mod_php で動いているため
パーミッションが足りないのだろう
サーバ環境なら fastCGI なので問題は起きないと思われるが
他のファイルに合わせて -rw-r--r-- にしておくのが吉?
サーバから持ち帰ってきたxoops で
xupdate をかけようとすると
「アップデートあり」や「すべて」に何も出てこなくなっていた
仕方ないので
TRUST_PATH/uploads/xupdate/ フォルダ下の
*.php を削除
再度表示させると、正しく出てきた
xupdate をかけようとすると
「アップデートあり」や「すべて」に何も出てこなくなっていた
仕方ないので
TRUST_PATH/uploads/xupdate/ フォルダ下の
*.php を削除
再度表示させると、正しく出てきた
ssh オートログインを設定していたのだが以下のエラーが出た
サーバが変わったからだが、
ssh-keygen -R "xxx.coreserver.jp"
としてから、再接続で再登録してもなぜか怒られる
IPアドレスでの登録 known_hosts にあったのか、該当の行を削除したら治った
もう一度 ssh-keygen -R で IPアドレスを指定して実行すればよかったのかも
という訳で、別のマシンから再度試してみた
やっぱり
ssh-keygen -R "XXX.XXX.XXX.XXX"
と IPアドレスを指定したら、問題は消えた
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
...
サーバが変わったからだが、
ssh-keygen -R "xxx.coreserver.jp"
としてから、再接続で再登録してもなぜか怒られる
Warning: the ECDSA host key for 'xxxxxxxxx' differs from the key for the IP address 'XXX.XXX.XXX.XXX'
Offending key for IP in /home/hoge/.ssh/known_hosts:N
IPアドレスでの登録 known_hosts にあったのか、該当の行を削除したら治った
もう一度 ssh-keygen -R で IPアドレスを指定して実行すればよかったのかも
という訳で、別のマシンから再度試してみた
やっぱり
ssh-keygen -R "XXX.XXX.XXX.XXX"
と IPアドレスを指定したら、問題は消えた
PHP5.3以上では以下のワーニングが出る
$TRUST/wizin/src/Wizin_StdClass.php を修正
/stdclass/Php53x.class.php を Php52x.class.php からコピーして
該当の部分を修正
(trust)/modules/wizxc/class/WizXc_Util.class.php line 99
Assigning the return value of new by reference is deprecated
$TRUST/wizin/src/Wizin_StdClass.php を修正
} else if ($phpVersion < 5.3) {
require_once dirname(__FILE__) . '/stdclass/Php52x.class.php';
} else {
require_once dirname(__FILE__) . '/stdclass/Php53x.class.php';
}
/stdclass/Php53x.class.php を Php52x.class.php からコピーして
該当の部分を修正
(trust)/modules/wizxc/class/WizXc_Util.class.php line 99
アップデートで白紙になった
preload/D3forumCommonCss.php の o+r がない
preload/D3forumCommonCss.php の o+r がない
xoops_trust_path/modules/protector/configs/configcacheXXXXX): failed to open stream:
Permission denied in file (trust)/modules/protector/class/protector.php line 172
chmod 777 xoops_trust_path/modules/protector/configs/
chmod 666 xoops_trust_path/modules/protector/configs/config*
開発用サーバは module版のため?
本番サーバでは 644 にすべき?
mysql 5.5 -> 5.7
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
にアクセス
OS=Ubuntu
Version=14.04 x86,64bit
を選択して
Install Using APT から download を押すと以下に遷移する
直接以下にアクセスしてもOK
https://dev.mysql.com/downloads/repo/apt/
最新版が mysql-apt-config_0.8.8-1_all.deb だと確認
参考URL:http://d.hatena.ne.jp/tociyuki/20170502/1493696004
Ubuntu 14.04 への MySQL-5.7 インストール失敗回避バッドノウハウ
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
にアクセス
OS=Ubuntu
Version=14.04 x86,64bit
を選択して
Install Using APT から download を押すと以下に遷移する
直接以下にアクセスしてもOK
https://dev.mysql.com/downloads/repo/apt/
最新版が mysql-apt-config_0.8.8-1_all.deb だと確認
wget https://dev.mysql.com/get/mysql-apt-config_0.8.8-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.8-1_all.deb
sudo apt updata
sudo /etc/init.d/apparmor stop
sudo apt install mysql-server libmysqlclient-dev
sudo /etc/init.d/apparmor start
参考URL:http://d.hatena.ne.jp/tociyuki/20170502/1493696004
Ubuntu 14.04 への MySQL-5.7 インストール失敗回避バッドノウハウ