ラベル nginx の投稿を表示しています。 すべての投稿を表示
ラベル nginx の投稿を表示しています。 すべての投稿を表示

2014年3月3日月曜日

ファイルダウンロードのアクセス制限


ファイルダウンロードのアクセス制限で使える。

nginx + PHP-FPMで巨大なファイルをダウンロードさせる
によると、
--------------------------------------------------------------
NginxにはX-Accel-Redirectという非公開領域にバイパスを通すような仕組みがあるようです。
PHPで認証かましてからダウンロードさ せるならこの方法がいいみたいですね。
Apacheにも同様のmod_xsendfileといのがあるようです。詳しくはググっておくんなまし。

コメント欄

nginx側に
location ~ /download/(.+) {
internal;
alias /var/www/html/download/$1;
}
とか書いといて
header('Content-Disposition: attachment; filename=ファイル名' );header("X-Accel-Redirect:/download/ファイル名");
ってしてあげるのが楽じゃないですか?
phpはコンテンツ返す必要なくて、nginxが勝手にやってくれます。

--------------------------------------------------------------
とのこと。

お~~~
開発も楽になりそうだし、サーバー負荷も下がりそうだ。

2012年11月2日金曜日

nginxインストール (rpm)

nginx どうなのよ?
「エンジンエックス」って読むけどOKですか?

nginx.org でrpmを用意してくれている。


では、リポジトリをついか。

/etc/yum.repos.d/nginx.repo を作成
-----------------------------------------------------------
[nginx]
name=nginx repo
# stable版
baseurl=http://nginx.org/packages/centos/6/$basearch/
# 開発版
baseurl=http://nginx.org/packages/mainline/centos/6/$basearch/
gpgcheck=0
enabled=1
-----------------------------------------------------------
stable or mainline(開発版) のどちらかを選択し、

とりあえず、websocketを試したいので、開発版を選択。

yum install nginx
で、無事インストールできた。


自分のドメインを追加するとエラーが出るので、
/etc/nginx/nginx.conf に
server_names_hash_bucket_size  64;
を追加。 (今のところ何なのかはわかってない)

あと、デフォルトで、
uwsgi_params とかfastcgi_params が用意されてるので、
そのうち使ってみる。