PHP
2011年9月30日
さくらインターネットでPHPスクリプトをcronで実行する際の注意点
さくらインターネットの共用サーバー(私はスタンダードプランで確認)でPHPスクリプトをcronで実行する際、注意点がひとつあります。
cronの設定はコントロールパネルから簡単にできますが、実行するプログラムを指定する際、
/usr/local/bin/php スクリプトフルパス
で設定しないとプログラムが実行されません。
コマンドラインのくせで
php スクリプトフルパス
なんて入力してしまうとハマってしまいます。
2011年4月7日
dom_import_simplexml()が未定義?
Fatal error: Call to undefined function dom_import_simplexml() in /xxxxxx.php on line 230
こんなエラーが出た。
dom関係のモジュールがなさそうなのでyumでインストール。
yum install php-dom
service httpd restart
簡単に解決できてよかった。
2011年3月10日
PHPエラー集
Fatal error: Class ‘xxxxx’ not found in xxxxx on line 2
指定したクラスが存在しない
2011年2月25日
PHPで送信したHTMLメール本文中の画像が見れない
PHPでHTMLメールを送信するシステムを作っていました。
構築まではできたのですが、あるときものすごくはまってしまう出来事が発生。
その問題とは
「HTMLメール中に画像のリンクを張ると画像が表示できない」
ということでした。
現象がはっきりしているのでソースを追っていけばわかるかと思いましたが全然解決せず。
PEARのMail_Mimeを使ったのでその中身をひたすら追ってもどうにも解決できません。
送信したテストメールも100通くらい。
ソースだけではどうにもならないのでインターネットメールの仕様をお勉強。
しかしメールのソースは仕様通りになっているように見えます。
今まで送られてきたHTMLメールのソースをみても特に違いはありません。
なのに自分のメール以外は普通に画像が表示されています。
解決の糸口が見つからない状態で3日位もんもんしていましたが、本日ふとしたことがきっかけであっさり解決してしまいました。
その原因は
「BASIC認証・・・・・」
でした。
メーラーによってはBASIC認証がかかっているファイルにアクセスしても、認証を聞いてこないで画像を表示しないメーラーが多いようです。
私はGmail、Thunderbird、Outlook2007で確認していましたが、Gmailのみ認証画面がでてきて認証が成功すると画像が表示されました。
単純すぎて全然気付かなかった自分が悲しい。。
学んだことは
「BASIC認証がかかっているファイルをメーラーでは開けないと思え」
です。