プロが教えるわが家の防犯対策術!

現在AnHttpdを利用していますが、Apacheに変更するつもりです。Apacheを使うのは初めてでして、設定で試行錯誤している段階です。

.htaccessを使わずにApacheのhttpd.confの設定だけで.jsファイルをダウンロードさせない(ソースを表示させない)ようにすることは可能でしょうか?

応答速度を上がるために.htaccessは極力使うのを避けるほうがよいとあるサイトで説明されていました。よろしくお願いいたします。

A 回答 (1件)

Javaスクリプトはあまり詳しくないので、あれですが、、、


可能ですが、HTMLから呼び出すことも出来なくなる筈なのですけど?

基本的に .htaccess で出来ることは httpd.confでも出来ます。
その逆は httpd.confに記述できるものの、ごく一部だけが .htaccessでも出来ます。

方法としては
<FilesMatch "\.js$">
Order allow,deny
Deny from all
</FilesMatch>

とか もっと簡単には
AddHandler cgi-script .cgi .js
これで直接アクセスは出来なくなりますが
CGIだとデータファイルを読み込むのにhttpdは経由しませんので
データfileなどに直接アクセスできなくしても問題ありませんが
HTML文の中で
<script type="text/javascript" src="./test.js">
のような指定をした場合
test.jsは httpd経由でブラウザが読み込むはずですので
.jsに直接アクセスできなくなる=HTMLからの呼び出しも出来なくなるはずですが?

CGIの中で読み込んで Javaスクリプトを表示するということなら出来ますし
私の知らない他の使い方があると言うことならゴメンなさいです。

>応答速度を上がるために.htaccessは極力使うのを避けるほうがよい
確かにそうです。 特に .htaccess有効になっているディレクトリが上位にあり
アクセスするディレクトリがかなり深いところに有る場合は、なお更です。
例えば /home/ で .htaccessが有効になっていて
/home/tarou/public_html_html/sub1/sub2/sub3/test.htm
にアクセスする場合
Apacheは、まず /home/ に.htaccessが有るかどうか調べて
有れば内容を読みます
次に /home/tarou/ でも調べて、有れば読みます
以下/home/tarou/public_html_html/sub1/sub2/sub3/ まで同じ事を行いますのでサーバーの負担は当然増えます。

但し windowsの場合は、そもそもライセンス的にクライアント数が制限されていますので
(XPhomeだと確か同時には5台までだと思った)
それほど気にする必要も無いかと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。おかげさまで解決することができました。

お礼日時:2006/09/26 20:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A