1.0.14J グローバル設定更新できない、フレンドリーURLで表示できない  【解決済み】

質問全般・改善要望
pocci
メンバー
メンバー
記事: 4
登録日時: 2014年6月19日(木) 10:39

1.0.14J グローバル設定更新できない、フレンドリーURLで表示できない  【解決済み】

投稿記事by pocci » 2014年6月19日(木) 11:36

-----
ご利用のサーバ:netowl ミニバード
MODXのバージョン:Evolution 1.0.14J
PHPのバージョン:5.3.3 5.1.6
MySQLのバージョン:5.0.95 5.5.34
ブラウザ:Safari
-----

1.0.5(Jでない)から1.0.14Jへアップデートしましたが、以下の問題が発生しました。

・グローバル設定の更新、保存ができない
・フレンドリーURLでエイリアスを指定していないリソースのページが表示できない。

ローカル環境でも同じ問題が再現します。

ミニバード環境:
Apache/2.2.3
OS Linux 2.6.18-371.6.1.el5 #1 SMP Wed Mar 12 20:03:51 EDT 2014 x86_64
PHPのバージョン 5.3.3
セーフモード off
php_sapi_name cgi-fcgi
MySQLのバージョン 5.0.95
MySQLホスト情報 mysql2.minibird.netowl.jp via TCP/IP
MODXのバージョン 1.0.14J

ローカル環境:
Apache/2.2.26 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.6 PHP/5.1.6 mod_ssl/2.2.26 OpenSSL/0.9.8y DAV/2 mod_perl/2.0.8 Perl/v5.18.2
OS Darwin 13.2.0 Darwin Kernel Version 13.2.0: Thu Apr 17 23:03:13 PDT 2014; root:xnu-2422.100.13~1/RELEASE_X86_64 x86_64
PHPのバージョン 5.1.6(phpMyAdminでの作業時だけ一時的に 5.5.10に変更)
セーフモード off
php_sapi_name apache2handler
MySQLのバージョン 5.5.34
MySQLホスト情報 Localhost via UNIX socket
MODXのバージョン 1.0.14J

アップデートは以下の手順で行っています(すべてのファイルとデータベース内のテーブルをいったん削除してから行いました)。

・1.0.5を新規インストールして動作することを確認(ローカル環境のMySQL 5.5.34ではそのままインストールできなかったのでinstallフォルダ内のsetup.data.sqlとsetup.sqlのType=MyISAMをENGINE=MYISAMに置換)
・phpMyAdminでバックアップしておいたテーブルをインポートして動作することを確認
・1.0.14Jの配付ファイル一式をMODX設置ディレクトリに上書きして通常アップデート。以下のエラーメッセージ

***
インストールを実行しました。
セットアップ結果
必要なテーブルの作成: データベースの警告
選択されたテーブルをインストール/変更できませんでした。
インストール中に以下のエラーが発生しました。

Unknown column 'view_schedule' in 'field list' during the execution of SQL statement REPLACE INTO `modx_user_roles` (id,name,description,frames,home,view_document,new_document,save_document,publish_document,delete_document,empty_trash,action_ok,logout,help,messages,new_user,edit_user,logs,edit_parser,save_parser,edit_template,settings,credits,new_template,save_template,delete_template,edit_snippet,new_snippet,save_snippet,delete_snippet,edit_chunk,new_chunk,save_chunk,delete_chunk,empty_cache,edit_document,change_password,error_dialog,about,file_manager,save_user,delete_user,save_password,edit_role,save_role,delete_role,new_role,access_permissions,bk_manager,new_plugin,edit_plugin,save_plugin,delete_plugin,new_module,edit_module,save_module,exec_module,delete_module,view_eventlog,delete_eventlog,manage_metatags,edit_doc_metatags,new_web_user,edit_web_user,save_web_user,delete_web_user,web_access_permissions,view_unpublished,import_static,export_static,remove_locks,view_schedule) VALUES (1, 'Administrator', 'Site administrators have full access to all functions',1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1).

いくつかのテーブルはアップデートされませんでした。修正などに起因しているようです。
***

・管理画面にログインできるがグローバル設定が更新できない(更新ボタンをクリックすると、そのフレームだけ真っ白になり表示されなくなり、再度グローバル設定を開くと「アップデートまたは新規インストール直後のため、各種設定を確認し更新する必要があります。設定を確認した後、データベースを更新するために「更新」ボタンをクリックしてください。」のまま。変更の変更をしても反映されない)
・サイトは下記エラーで表示できないが、Quick Manager+の停止で表示される
***
Use of undefined constant E_RECOVERABLE_ERROR - assumed 'E_RECOVERABLE_ERROR'
« MODX Parse Error »

MODX encountered the following error while attempting to parse the requested resource:
« PHP Parse Error »
PHP error debug
Error : extract() [function.extract]: First argument should be an array
ErrorType[num] : WARNING[2]
File : /Users/***/public_html/***.net/assets/plugins/qm/qm.inc.php
Line : 34
Source : extract($params);
Basic info
REQUEST_URI : /***.net/
Resource : [1]Home
Current Plugin : Quick Manager+(OnParseDocument)
Referer : http://localhost/***.net/manager/index. ... amp;f=menu
User Agent : Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.76.4 (KHTML, like Gecko) Version/7.0.4 Safari/537.76.4
IP : 127.0.0.1
Benchmarks
MySQL : 0.0025 s (5 Requests)
PHP : 5.1493 s
Total : 5.1518 s
Memory : 3.3 MB

Backtrace

1 DocumentParser->executeParser()
index.php on line 144
2 DocumentParser->prepareResponse()
manager/includes/document.parser.class.inc.php on line 356
3 DocumentParser->parseDocumentSource()
manager/includes/document.parser.class.inc.php on line 452
4 DocumentParser->invokeEvent()
manager/includes/document.parser.class.inc.php on line 1917
5 DocumentParser->evalPlugin()
manager/includes/document.parser.class.inc.php on line 2879
6 eval()
manager/includes/document.parser.class.inc.php on line 1453
7 Qm->Qm()
manager/includes/document.parser.class.inc.php(1453) : eval()'d code on line 26
8 extract()
assets/plugins/qm/qm.inc.php on line 34
***

エイリアスの問題に関しては以下のようになっています。ただしこの設定も更新できません。

フレンドリーURLを使用:はい
プレフィックス:空欄
サフィックス:.html
エイリアスを使用:はい
エイリアスパスを使用:いいえ
重複エイリアスを許可:いいえ
エイリアス自動生成:無効

・管理画面にログインでき、リソースの新規作成と既存リソースの更新ができることを確認。
・フレンドリーURLでエイリアスを指定していない(空欄のままの)リソース(例:id=369)のページが「http://***.net/369.html」で表示できず、エラーページ(リソースid:1)が表示される。
・リソースidと同じ数字のエイリアスを設定しようとすると以下のエラーになる
***
リソース「369」が「369」というエイリアスをすでに使用しています。エイリアスを変更してください。
***
・indexやリソースidと違う数字のエイリアスを設定すればエイリアスでページが表示できる。
・http://***.net/index.php?id=369なら表示できる

.htaccessの内容
DirectoryIndex index.php index.html
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
# The Friendly URLs part
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

ローカル環境プラグイン(すべて停止中)
旧バージョンを削除したつもりですが、バージョン表示が古いままになっていると思います。
ManagerManager 0.3.9
Quick Manager+ 1.5.5
TinyMCE Rich Text Editor 3.3.9.2
TransAlias 1.0.1

ManagerManager(16) 0.4
Quick Manager+(17) 1.5.5r7
TinyMCE Rich Text Editor(18) 3.5.11
TransAlias(12) 1.0.1

長くなってしまいましたが、ご教示いただけると幸いです。
アバター
yama
管理人
記事: 2915
登録日時: 2009年7月29日(水) 02:50

Re: 1.0.14J グローバル設定更新できない、フレンドリーURLで表示できない

投稿記事by yama » 2014年6月19日(木) 11:52

viewtopic.php?p=7589#p7589
上記のパッケージでアップデートを試してうまくいくかどうか確認いただいてよいでしょうか?
pocci
メンバー
メンバー
記事: 4
登録日時: 2014年6月19日(木) 10:39

Re: 1.0.14J グローバル設定更新できない、フレンドリーURLで表示できない

投稿記事by pocci » 2014年6月19日(木) 12:59

yama様

早速ありがとうございます。

これは実は最初に試してみてだめでした。
あとでもう一度やってみて、エラーメッセージなども記録して書きます。
pocci
メンバー
メンバー
記事: 4
登録日時: 2014年6月19日(木) 10:39

Re: 1.0.14J グローバル設定更新できない、フレンドリーURLで表示できない

投稿記事by pocci » 2014年6月19日(木) 14:46

ローカル環境で教えていただいたパッケージを適用したところ、インストール中のエラーは出ませんでしたが、結果に変化はありませんでした。

本日再インストールしたイベントログです。52からがパッケージを適用したログです。 ID:50、51が「エラー」であとは「情報」です。

57 Delete action.php is success 19-06-2014 14:32:54 root
56 Update 1.0.7 to 1.0.14J 19-06-2014 14:32:54 root
55 Update 1.0.6 to 1.0.14J 19-06-2014 14:32:54 root
54 Delete action.php is success 19-06-2014 14:32:27 root
53 Update 1.0.7 to 1.0.14J 19-06-2014 14:32:27 root
52 Update 1.0.6 to 1.0.14J 19-06-2014 14:32:27 root
51 Plugin - Quick Manager+ 19-06-2014 10:41:43
50 Plugin - Quick Manager+ 19-06-2014 10:40:56
49 Delete action.php is success 19-06-2014 10:40:43 root
48 Update 1.0.7 to 1.0.14J 19-06-2014 10:40:43 root
47 Update 1.0.6 to 1.0.14J 19-06-2014 10:40:43 root
46 Delete action.php is success 19-06-2014 10:33:46 root
45 Update 1.0.7 to 1.0.14J 19-06-2014 10:33:46 root
44 Update 1.0.6 to 1.0.14J 19-06-2014 10:33:46 root
43 古い仕様の管理画面テーマを無効にしました 19-06-2014 10:31:29 root
42 Delete action.php is success 19-06-2014 10:31:29 root
41 Update 1.0.7 to 1.0.14J 19-06-2014 10:31:29 root
40 Update 1.0.6 to 1.0.14J 19-06-2014 10:31:29 root

よろしくお願いいたします。
pocci
メンバー
メンバー
記事: 4
登録日時: 2014年6月19日(木) 10:39

Re: 1.0.14J グローバル設定更新できない、フレンドリーURLで表示できない

投稿記事by pocci » 2014年6月23日(月) 10:49

アドバイスをいただき、以下により解決しました。

・グローバル設定の更新、保存ができない
以下のパッケージでアップデート
http://forum.modx.jp/viewtopic.php?p=7623#p7623

・フレンドリーURLでエイリアスを指定していないリソースのページが表示できない。
manager/includes/document.parser.class.inc.phpを置き換え
http://forum.modx.jp/download/file.php?id=1230

なおグローバル設定の問題は、アップデート前(1.0.5)の
・ファイル管理機能の対象ディレクトリのパス設定
・ファイルブラウザディレクトリのパス設定
に以前のサーバーでの値が固定パスで設定されたままになっており、これらをアップデート前にリセットしておけば発生しないことがわかりました(ファイル管理をFTPで行っていましたが、不正な値のままでもMODXでは問題が出ていず気付きませんでした)。

yama様、ありがとうございました。