■原因
GD(および他の画像処理ライブラリ)がインストールされていなかったため。
■行ったこと
パッケージ・マネージャでphp5-gdをインストールした。
各画像ファイル形式を扱うライブラリについては、
libjpegはlibjpeg62、pngはzlib1gがインストール済みだったため、freetype2-demosだけインストールした。
ついでに、myAlbum-Pモジュール推奨のImageMagickもインストールしました。
こちらも、パッケージ・マネージャからphp5-imagickをインストール。
■確認方法
GDがインストールされていれば、phpinfo()で、GDに関する項目が表示される。
■参考
GD:
http://www.php.net/manual/ja/book.image.php
http://d.hatena.ne.jp/hiratake55/20090119/1232363523
ImageMagick:
http://headape777.blog59.fc2.com/blog-entry-241.html
web上には、configureオプションにgdを含めてphpをコンパイル、インストールしなさい、php.iniも編集しなさい、という指示が多い。
でも、パッケージのインストール→Apache再起動だけで使えるようになりました。
■その他
XOOPSのmyAlbum-Pでサイズ制限を超えたファイルをアップすると、何の注意も出ず、ただ表示されない。
最初これでつまづいたことからこの問題にたどり着いたけれど、これはまた別の(モジュールの)問題。
2009年10月2日金曜日
[XOOPS] パーミッション
パーミッション、表示についてはかなりややこしい。。
分かったことをとりあえず書き出してみます。
■互換モジュールとALTSYSモジュールの関係
ALTSYSモジュールは「使いにくいシステムモジュール」を代替するためのモジュール。
(それを知らなくて余計混乱したけど)
ALTSYSモジュールのブロック管理は、
上部「ブロック管理」が「互換モジュール>ブロック管理」の代替、
下部「アクセス権限設定」が「ユーザモジュール>ユーザグループ管理>パーミッション」の代替。
ユーザグループ管理>パーミッション>モジュールの設定の「管理」にチェックすると、管理メニューに追加される。
■モジュールとブロック
一旦インストールしてしまったら、表示・アクセス権設定はモジュールとブロックはほぼ独立している。
モジュールの設定は「メインメニュー」に反映され、
ブロックの設定は実際の左・中央・右ペインへの表示に反映される。
例えば、モジュールへのアクセス権は無いのに、ブロックへのアクセス権(r)はある、という状態も作れる。
分かったことをとりあえず書き出してみます。
■互換モジュールとALTSYSモジュールの関係
ALTSYSモジュールは「使いにくいシステムモジュール」を代替するためのモジュール。
(それを知らなくて余計混乱したけど)
ALTSYSモジュールのブロック管理は、
上部「ブロック管理」が「互換モジュール>ブロック管理」の代替、
下部「アクセス権限設定」が「ユーザモジュール>ユーザグループ管理>パーミッション」の代替。
ユーザグループ管理>パーミッション>モジュールの設定の「管理」にチェックすると、管理メニューに追加される。
■モジュールとブロック
一旦インストールしてしまったら、表示・アクセス権設定はモジュールとブロックはほぼ独立している。
モジュールの設定は「メインメニュー」に反映され、
ブロックの設定は実際の左・中央・右ペインへの表示に反映される。
例えば、モジュールへのアクセス権は無いのに、ブロックへのアクセス権(r)はある、という状態も作れる。
2009年10月1日木曜日
[XOOPS] まずはサイトを作ってみる2
■行ったこと
モジュールとブロックの表示の扱いに慣れる
外部モジュールをインストールしてみる
テーマを変えてみる
■分かったこと
モジュールのアップデートは必須。
モジュールやブロックの表示はユーザグループごとに設定するが、ALTSYS, 互換モジュール、各モジュールでの設定の3つの場所で、インストール、アクセス権限、表示の設定をするため、複雑で理解しにくい。
モジュール間での依存も結構ある。
テーマはCSSができれば、問題なく使いこなせる。
■明日への課題
モジュール、ブロックの設定についてきちんと理解する
テンプレートを変えてみる
モジュールとブロックの表示の扱いに慣れる
外部モジュールをインストールしてみる
テーマを変えてみる
■分かったこと
モジュールのアップデートは必須。
モジュールやブロックの表示はユーザグループごとに設定するが、ALTSYS, 互換モジュール、各モジュールでの設定の3つの場所で、インストール、アクセス権限、表示の設定をするため、複雑で理解しにくい。
モジュール間での依存も結構ある。
テーマはCSSができれば、問題なく使いこなせる。
■明日への課題
モジュール、ブロックの設定についてきちんと理解する
テンプレートを変えてみる
2009年9月30日水曜日
[XOOPS] まずはサイトを作ってみる
■行ったこと
1) 適当なサイトを作ってみる
1-1) protectorモジュールの指示に従って、php.iniを修正
573行目:allow_url_fopen = On
-> allow_url_fopen = Off
2) 他のホスト(windows)からアクセスしてみる
2-1) apacheの設定を確認
/etc/apache2/sites-available/default
14行目:allow from all
2-2) ipを確認
端末でifconfig
2-3) windowsからping
2-4) windowsのchromeから
http://ipアドレス/hd104でアクセス
アクセスはできたが、ページ内リンクのURLがすべてlocalhostになっていた
→mainfile.phpのホスト名の設定を変更
45行目: define('XOOPS_URL', 'http://localhost/hd104');
-> define('XOOPS_URL', 'http://192.168.0.24/hd104');
3) ユーザを作ってみる
・管理者メニューから
・ゲストとして自己申告
・CSVから
・ゲストとして自己申告
・CSVから
4) ユーザグループを作ってみる
5) カスタムブロック(HTML)を試しに作ってみる
■気付いたこと
しばしば読み込みするときに時間がかかる
(70秒くらい)
・protectorモジュールに初めてアクセスしたとき
・php.iniの設定を変えてリロードしたとき
承認済みユーザは未承認ユーザには戻せない
・互換モジュール、ALTSYSモジュールがないとモジュール・ブロック管理がさっぱりできない
■今後の課題
1.xoops_trust_pathについて学習
2.VMwareのネットワーク設定について学習
(できれば固定IPにしたい)
3.ホスト名の設定方法
XOOPSサイト上での設定方法
→変更する手段は無い(mainfile.phpのパーミッションを644にしているから)
.(protectorモジュールについて学習)
2009年9月29日火曜日
[XOOPS] PHPメモリ割り当て設定
現象:
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 1310526 bytes) in /var/www/vhosts/makinecim.com/httpdocs/generator/pages/class.utils.inc.php(2) : eval()'d code on line 6
というようなエラーが表示される。
ページ全体が表示されず、エラー文のみが表示される場合も、
ページの途中で表示される場合もある。
対策:
1)php.iniの設定(サーバ全体)を変更して、XOOPSを再インストール/etc/php5/apache2/php.ini
270行目:memory_limit = 16M
→ memory_limit = 64M
2)mainfile.phpでの設定(XOOPS)を変更
(XOOPSインストールフォルダ直下)/mainfile.php
30行目: define("XCL_MEMORY_LIMIT", "16M"); // extra param
→ define("XCL_MEMORY_LIMIT", "64M"); // extra param
仕組み:
php.iniはインストール時に参照される。実際のXOOPSの動作には関係ない。
XOOPSの動作が依存するのは、インストール時にphp.iniの設定をデフォルトとして、mainfile.phpに書き込まれた設定。
mainfile.phpのメモリ割り当て設定ははインストール時に設定変更可能。
(64MBのサイズは適当なもの。)
XOOPSインストール
参考:
■Ubuntu + LAMP
http://builder.japan.zdnet.com/news/story/0,3800079086,20384129,00.htm
■VMware + Ubuntu + LAMP
http://sarabande.info/wiki/Vmware:Ubuntu%E3%81%A7Web%E3%82%B5%E3%83%BC%E3%83%90%E3%82%92%E6%A7%8B%E7%AF%89%E3%81%99%E3%82%8B#PHP5.E3.81.AE.E3.82.A4.E3.83.B3.E3.82.B9.E3.83.88.E3.83.BC.E3.83.AB
■Ubuntu + LAMP + XOOPS Cube Legacy 2.1.6
http://smooth-is-the-way.blogspot.com/search/label/Ubuntu
1) Synapticパッケージ・マネージャを利用して,apache, php, mysqlをインストール.
1-1) apacheをインストール
パッケージ:apache2
1-2) phpをインストール
パッケージ:php5, libapache2-mod-php5
1-3) MySQLをインストール
パッケージ:mysql-server, mysql-client, libapache2-mod-auth-mysql
1-4) php - MySQL連携のためのパッケージ
パッケージ:php5-mysql, php5-mysqli
2) 文字コードをUTF-8に統一
2-1) MySQL (/etc/mysql/my.cnf)
[client]
default-character-set=utf8
[mysqld]
skip-character-set-client-handshake
default-character-set=utf8
[mysqldump]
default-character-set=utf8
2-2) PHP (/etc/php5/apache2/php.ini)
magic_quotes_gpc = Off
default_charset = UTF-8
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = Off
mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
mbstring.substitute_charactor = none
3) データベースの作成
ユーザ:xoopsuser
パスワード:xoops
データベース:xoops
4) XOOPSのインストール
ホダ塾ディストリビューション1.0.4をインストール
http://www.hodajuku.org/modules/distribution/
4-1) /var/www直下にhd104ディレクトリを作成
4-2)解凍したhd_full_1_0_4の中のhtmlディレクトリの中身をコピー
4-3)さらにその中にextras/extra_languages/ja_utf8/htmlの中身をコピー
4-4)xoops_trust_pathをvarの直下にコピー
4-5)ブラウザでhttp://localhost/hd104にアクセス
4-6)インストーラにしたがってインストール
5) phpのメモリリミット増加
/etc/php5/apache2/php.ini
270: memory_limit = 16M
-> memory_limit = 64M
6) installフォルダ削除+mainfile.phpパーミッション変更
mainfile.phpは644に変更
今後の課題:
XOOPS_TRUST_PATHについて詳しく知る
登録:
投稿 (Atom)