11
"static.domain.com"は画像を配信できるので、nginxを設定しようとしています。これは私が思いついたものですが、より効率的に行うことができます。誰かが.htm、.php、ディレクトリ(何かが紛失していますか?)ファイルにアクセスしようとすると、403.htmlを提供したいと思います。もちろん、403.htmファイルとstatic.htmファイルは例外です。nginx - 画像のみを配信
どのように私はこれを適切に確保できますか?
server {
listen xx.xx.xx.xx:80;
server_name static.domain.com;
root /www/domain.com/httpdocs;
index static.htm;
access_log off;
error_log /dev/null crit;
error_page 403 /403.html;
# Disable access to .htaccess or any other hidden file
location ~ /\.ht {
deny all;
}
location ~* \.php {
deny all;
}
# Serve static files directly from nginx
location ~* \.(jpg|jpeg|gif|png|bmp|ico|pdf|flv|swf|exe|html|htm|txt|css|js) {
add_header Cache-Control public;
add_header Cache-Control must-revalidate;
expires 7d;
}
}
これは簡単ですか?他に何も必要ありませんか? –
もちろん、私がそこに書いたことを実行していないので、私は確かにそれをテストするだろう。 location〜* \。(jpg | jpeg | gif | png ...)はパイプで区切られたすべての型にマッチします。そうでなければ "/"はすべてにマッチするので "/"にマッチします。 –
FireFoxでは、アクセスされた.phpファイルがユーザーにファイルのダウンロードを許可しているため(ダウンロードプロンプトを表示)、これは機能しません。 –