« 8月 2010 9月 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

  • んっ cronでpearが動かない!?
  • 2010.05.27
  • ブラウザから起動すると正常に動くプログラムがcronだと動かないというのはたまにある現象だし、今までは殆どの場合、パスの違いが原因でした。
    今回、pearをcronで動かしたかったのだが、動かなかったので、include_pathを調べてみたが合ってる様子。
    色々試してみたところ、PHPがセーフモードの為、動かなかったのが判明した。
    ブラウザで起動する場合は、php.ini、httpd.conf、.htaccessの設定を読むが、cron(CLI)ではデフォルトはphp.iniのみだそうなので、php.iniのsafe_modeをOffにしようとも思ったが、そうするとサーバ全てに反映されてしまい、セキュリティ上好ましくない為、cronの記述に「/usr/bin/php -d safe_mode=off」のように -d safe_mode=off を追加することにより問題が解消されました。


    ホームページ制作・WEBシステム開発

【この記事のタグ】
, ,
  • PEARのインストール
  • 2009.11.21
  • 共用サーバー(使えるネット)でFTPを使用したPEARライブラリのインストール方法をまとめます。


    (1)http://pear.php.net/go-pearにアクセスして表示されたスクリプトをコピーしてgo-pear.php等の名前を付けてローカルに保存する。


    (2)ウェブサーバー上にgo-pear等、適当な名前のディレクトリを作成し、そこに先程保存したgo-pear.phpをアップロード。


    (3)第三者にアクセスされないよう、Basic認証でアクセス制限をかける。
    「.htaccess」 の内容
    # このフォルダーのアクセス制限 パスワードの設置
    AuthUserFile /var/www/vhosts/**********/httpdocs/go-pear/.htpasswd
    #制限をかけたいディレクトリ
    AuthGroupFile /dev/null
    AuthName “Please enter your ID and password
    AuthType Basic
    require valid-user


    「.htpasswd」 の内容
    ID:暗号化されたパスワード


    (4)PEARをインストールするディレクトリを作成し、そのディレクトリのパーミッションを777に変更。


    (5)ブラウザでgo-pear.phpにアクセス。


    pear1
    ここでは「Next」をクリック


    pear2

    1にPEARをインストールするパスを入力。
    使えるネットの場合は「/var/www/vhosts/ドメイン名/httpdocs/pear」


    11にPHPパスを入力。
    使えるネットの場合は「/usr/bin/php」


    全ての設定が終わったら「Install」をクリック。


    (6)include_pathを設定。
    共用サーバーではphp.iniを編集出来ないので、.htaccessで設定する。

    php_value include_path “.:/var/www/vhosts/ドメイン名/httpdocs/pear”

    php_value include_path “.:/var/www/vhosts/ドメイン名/httpdocs/pear”

【この記事のタグ】
,
Page Top