ホームページ >バックエンド開発 >PHPチュートリアル >Smarty のcompile_dir パス関連の問題
Smarty の COMPILE_DIR パスの問題
ルート ディレクトリに templates_c configs キャッシュ フォルダーがあるのに、次のコードがエラーを報告するのはなぜですか?
致命的なエラー: Smarty エラー: $compile_dir '/templates_c/' が存在しないか、ディレクトリではありません
-- ----解決策---------
このディレクトリは、システムのルート ディレクトリを表すものであってはなりません。現在の Web サイトのルート ディレクトリ
------解決策----------------------
php がルート ディレクトリにアクセスできないはずです。
php.ini 設定をチェックして、safe_mode がオンになっているかどうかを確認します。
------解決策----------------------
/templates_c/
ルート ディレクトリはこの目次を用意してください
------解決策---------
templates_c/ ディレクトリが存在しません
考えられる理由現在、エラーを指しています。
echo $smarty->$compile_dir;
パスが何であるかを確認してください。次に、そのようなディレクトリが実際に存在するかどうかを確認します。
------解決策---------
コンパイルディレクトリが見つかりません。指定できます
これを印刷して、コンパイル ディレクトリ名が実際に存在するかどうかを確認できます。
------解決策---------
smarty クラスのインスタンスを生成した後にテンプレートを指定するキャッシュ ディレクトリ (この例では template_c) は、このディレクトリが現在のファイルに対して相対的であることを確認する必要があります。
------解決策---------
いいね!
------解決策----------------------
smarty を指す templates_c を表示
------解決策------------------
/aa/bb これは相対パスではなく絶対パスです。絶対パスを使用することをお勧めします。
ルートを表すには
$_SERVER['DOCUMENT_ROOT']."/templates_c/" を使用できます。現在の Web サイトの templates_c ディレクトリ (仮想ホスト)。
------解決策------
今日、smarty の設定に関するチュートリアルを書きました。それを参照してください! http://hi.baidu.com/hdxiaopihai/blog/item/e8a859f0c99311a7a50f5230.html