Smartyのテンプレートディレクトリ(tempaltes)を、documentRoot配下以外においたとします。
極端な例、このようにしたとします。
docroot -> /var/www/vhosts/xxx.com/
templates -> /home/someone/templates/
画像ファイルやCSSファイルはdocumentRoot配下に置かないと表示できません。
なので、PHPスクリプトを守りつつ(デザイナーに見せたくない、安全的にもNDA的にも)、
簡単に利用させる方法を探しています。
今は、httpd.confのvirtualhostディレクティブを使って、Aliasを貼っています。
(例)Alias /static/ /home/someone/templates/static/
こうすると、Dreamweaverでもプレビューでき、簡単に作れてUPでき、
発行するFTPアカウントも1つ、PHPファイルに危害を加えず安全で、説明するのも簡単です。
ただ、この方法だと、毎回apacheを再起動する必要があるし、
httpd.confを使うので、レンタルサーバを使った案件に対応が難しいのが現状です。
そこで、皆さんはどのようにディレクトリの構成を組んで運用しているか是非教えて下さい。
案件案件ごとに参考にしたいと思います。
私の場合ですが、
templatesのディレクトリを下記のように指定します。
$smarty->template_dir = 'documentRoot以外のディレクトリ';
cssや画像ファイルはそれぞれcss,imgsなどフォルダにまとめ、
templatesに配置し、htdocsからシンボリックリンクを貼っています。
レンタルサーバですとシンボリックリンクは貼れないですかね。。。。
ダミー
ありがとうございます!
シンボリックリンク、その手がありましたね!
FTPでchroot制限かけてたので、apacheもシンボリックリンクが効かない、と勝手に思い込んでました。
さくらインターネットのレンサバならOKですし。