1 2 3 4 5 6 | if (Configure::read( 'debug' ) == 0) { error_reporting (E_ALL & ~E_NOTICE & ~E_DEPRECATED); ini_set ( 'display_errors' , 0); ini_set ( 'log_errors' , 1); ini_set ( 'error_log' , LOGS . DS . 'php_error.log' ); } |
2013年9月26日木曜日
[cakephp] デバッグレベルが0でもエラーログを取る
以下をbootstrap.phpに書く
2013年9月25日水曜日
[cakephp] リダイレクトするview
1 2 3 4 5 6 7 | <?php $this ->Html->scriptStart( array ( 'inline' =>false, 'safe' =>false)); ?><!-- setTimeout( "link()" , 0); function link() { } //--><?php $this->Html->scriptEnd(); ?> |
2013年9月13日金曜日
さくらインターネットで複数のバージョンのPHPを使う。
もしくは、拡張子が.htmlのままPHPのスクリプトを実行させる
最近はphpが5.3以上というフレームワークやwebアプリが増えてきたのでとうとう さくらインターネットのphpの標準が5.2から5.4になった。 しかし、まだphp5.2でしか動かない古いwebアプリが残っていてphp5.4にすると そのサイトはワーニングを出すようになってしまった。 せっかくphpが5.4になったのに古いwebアプリの為にダウングレードするのは 大変残念なので、古いwebアプリだけ古いphpを使うようにしてみた。 コマンドラインでの作業になりますので十分注意をすること。 sshで自分のサーバーにログインします。 windowsならputtyとかPoderosaとか、 Macならcodaとかターミナルから ssh <自分のアカウント>@<自分のアカウント>.sakura.ne.jp と打ち込めばログインできます。
1 2 3 4 5 6 7 8 | %ls -l /usr/local/php total 16 drwxr-xr-x 7 root wheel 512 Jul 31 13:11 4.4.9 drwxr-xr-x 7 root wheel 512 Jul 31 13:11 5.2.17 drwxr-xr-x 7 root wheel 512 Jul 31 13:11 5.3.27 drwxr-xr-x 7 root wheel 512 Jul 31 13:12 5.4.17 lrwxr-xr-x 1 root wheel 6 Jul 23 15:57 cpanel -> 5.2.17 lrwxr-xr-x 1 root wheel 6 Aug 28 12:02 default -> 5.4.17 |
5.2.17 5.3.27 5.4.17 が表示された。それぞれphpの5.2 5.3 5.4である。 それぞれのディレクトリ下にbinディレクトリがありその下の目的のものがある。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | %ls -l /usr/local/php/5.2.17/bin total 71024 -rwxr-xr-x 1 root wheel 854 Jul 23 15:58 pear -rwxr-xr-x 1 root wheel 875 Jul 23 15:58 peardev -rwxr-xr-x 1 root wheel 791 Jul 23 15:58 pecl lrwxr-xr-x 1 root wheel 12 Jul 23 15:56 php -> php-mysql5.5 lrwxr-xr-x 1 root wheel 16 Jul 23 15:56 php-cgi -> php-cgi-mysql5.5 -rwxr-xr-x 1 root wheel 17975222 Jul 23 15:55 php-cgi-mysql4.0 lrwxr-xr-x 1 root wheel 16 Jul 23 15:56 php-cgi-mysql5.1 -> php-cgi-mysql5.5 -rwxr-xr-x 1 root wheel 18324512 Jul 23 15:56 php-cgi-mysql5.5 -rwxr-xr-x 1 root wheel 2993 Jul 23 15:56 php-config -rwxr-xr-x 1 root wheel 17977643 Jul 23 15:55 php-mysql4.0 lrwxr-xr-x 1 root wheel 12 Jul 23 15:56 php-mysql5.1 -> php-mysql5.5 -rwxr-xr-x 1 root wheel 18329621 Jul 23 15:56 php-mysql5.5 -rwxr-xr-x 1 root wheel 4528 Jul 23 15:56 phpize |
php何とかがいっぱいある。このなかでファイルサイズの小さい物はリンクなので 大きいものを探す。どうやら本体はphp-cgi-mysql5.5のようだ これをwww/cgi-binにコピーする。 wwwに移動 ディレクトリcgi-binを作る cgi-binに移動 先ほどlsで確かめたファイルをコピーする
1 | %cp /usr/local/php/5.2.17/bin/php-cgi-mysql5.5 php52.cgi |
5.3なら/usr/local/5.3.27/bin/php-cgi-mysql5.5 webサイトのrootの.htaccessに
1 2 | Action php52-script /cgi-bin/php52.cgi AddHandler php52-script .php |
の2行を追加する。 .htaccessが無ければ作って保存する。 OSのバージョンが変わったらphp52.cgiを作り直す そうしないと「Internal Server Error」が出ます。 AddHandler php52-script .php .html とすると、拡張子が.htmlのままPHPのスクリプトを実行させる時にも使えます。 マルチドメインの場合はフォルダーの下にcgi-binを作り 同じようにコピーして.htaccessを置きます。