global menu
search this site
sponsored links
REX CARD
楽天カード
漢方スタイルクラブカード
DMM mobile
OCN モバイル ONE
IIJmio

撮影機材
store
category archive
monthly archive
powered by

エントリーアーカイブ

Linux環境にSmartyをインストール

PHP

2007/01/30 14:32

CentOSへのインストール

  1. Smarty-x.x.x.tar.gzを/usr/local/srcに配置。
  2. Smarty-x.x.x.tar.gzを解凍。
    tar zxvf Smarty-x.x.x.tar.gz
  3. /usr/local/src/Smarty-x.x.xに移動。
    cd /usr/local/src/Smarty-x.x.x
  4. /usr/local/src/Smarty-x.x.x/libs以下のファイルを/usr/local/lib/php/Smartyに移動。
    mv /usr/local/src/Smarty-x.x.x/libs /usr/local/lib/php/Smarty
  5. php.iniで/usr/local/lib/php/にinclude_pathが通っていれば以下の記述で使用可能。
    require_once ("Smarty/Smarty.class.php");

Smartyの設定

  1. Smartyが使用するディレクトリを作成する。
    • templates
    • templates_c
    • configs
    • cache ※built-in caching有効時のみ
    注意点
    • セキュリティを考慮するとドキュメントルート(public_html)外に設置することが望ましい。
    • これらのディレクトリはアプリケーション毎に作成する事が推奨されている。
    • パーミッションは「770」とする。
  2. templates_c,cacheディレクトリのオーナーを変更する。(cacheはbuilt-in caching有効時のみ)
    chown nobody:nogroup templates_c
    chown nobody:nogroup cache
    
    ※apache起動ユーザーがnobodyで所属グループがnogroupの場合
  3. templates_c,cacheディレクトリのパーミッションを「770」に変更する。(cacheはbuilt-in caching有効時のみ)
    chmod 770 templates_c
    chmod 770 cache
    
  4. WebアプリケーションでのSmartyディレクトリのパス指定
    <?php
    //Smartyクラス読み込み
    require_once ("Smarty/Smarty.class.php");
    
    //Smartyオブジェクト作成
    $objSmarty = new Smarty();
    
    //Smartyディレクトリの指定
    $objSmarty->template_dir = "/home/(UserName)/Smarty/(ApplicationName)/templates";
    $objSmarty->compile_dir  = "/home/(UserName)/Smarty/(ApplicationName)/templates_c";
    $objSmarty->config_dir   = "/home/(UserName)/Smarty/(ApplicationName)/configs";
    $objSmarty->cache_dir = "/home/(UserName)/Smarty/(ApplicationName)/cache";
    ?>
    
    ※public_htmlと同階層に「Smarty」フォルダを作成しサブフォルダにWebアプリケーション名のフォルダを作成する事を想定。

公式サイト

解説サイト