拡張子指定で強制ダウンロード
ソースファイルを配布したい時や、データベースの集計結果をcsvファイルでダウンロードできるようにしたい時などにファイルをブラウザで開くのではなく強引にダウンロードさせる為の方法。
mod_header.soを読み込んでいる状態でhttpd.confか.htaccessに以下の記述を入れればOKです。
# txtとcsvファイルをダウンロードさせる
<IfModule mod_header.c>
<Files "\.(txt|csv)">
ForceType application/octet-stream
Header set Content-Disposition attachment
</Files>
</IfModule>
同じ拡張子でも、ダウンロードさせたいファイルとブラウザで開きたいファイルとで分けたい場合は専用のフォルダを作って<Directory>ディレクティブで指定してやれば良いかと。
Posted at 2011/06/02 (Thu) | Category IT[Apache]
2 comments | No Trackbacks | PageURL |
ServerSignatureとは
Apacheでログ関係の設定をしていた時にふと目に付いた項目。
ServerSignature On
これあんまり気にしたことなぁ・・・何やろか?(・ω・`)
と思ってググってみました。
Apache(httpd)でホームページ(Web)関連の設定を行う。(FedoraCore4応用編)
http://www.searchman.info/fedoracore4_apply/sev1010.html
引用です。
――――-・・・・・・
Apacheのバージョン情報が出ています。
この情報を出さないようにすると、一層セキュリティは強化されます。
――――-・・・・・・
ということで、Apacheのバージョン表示の設定でした。
フム、これはOffにしといた方が無難なんよ(・ω・`)
Posted at 2011/04/29 (Fri) | Category IT[Apache]
No comments | No Trackbacks | PageURL |
サーバの負荷対策にApacheのexpiresモジュールでキャッシュ制御を
画像や映像のコンテンツをメインとするサイトでの負荷対策に有効なモジュールであるexpiresモジュールの設定メモ。
画像や動画メインのサイトというと、画像掲示板とか、YouTubeとかですね。
あと、SNS系サイトも登録会員のアバター画像や写真掲載などがありますので、サイトの規模が大きいと画像専用のサーバを用意したりします。
当方のサーバではそんなコンテンツは無いのでそこまで必要ではないですが、いじる機会があったのでその時の備忘録をば。
Posted at 2011/03/25 (Fri) | Category IT[Apache]
2 comments | No Trackbacks | PageURL |
Apacheモジュールで帯域制限
あるサーバで1日の転送量が70GByteを超えてますので下げてください、というお達しがプロバイダから届きました。
そのプロバイダの転送量は1日30Gbyteまでは許容範囲とのことなので、Apacheで帯域に制限をかけることに。
帯域制限をかけるモジュールとしてメジャーなのが「mod_bw」。
これを使用します。
Posted at 2010/12/14 (Tue) | Category IT[Apache]
No comments | No Trackbacks | PageURL |
サーバ設定を少しチューニング
とりあえずApacheの
StartServersを8から5に下げて
MaxRequestsPerChildを4000から1000に下げて、
php.iniの
memory_limitを128Mから64Mに下げておきました。
弱小サーバなりにつつましく稼動させておくんよ!
Posted at 2010/11/23 (Tue) | Category IT[Apache]
No comments | No Trackbacks | PageURL |
Address already in use: make_sock: could not bind to address [::]:80
Apacheを起動させようとして
Address already in use: make_sock: could not bind to address [::]:80
というのが表示されて起動できなかった時の話、もとい備忘録。
Posted at 2010/11/02 (Tue) | Category IT[Apache]
No comments | No Trackbacks | PageURL |
mod_rewriteでwwwの有無を統一する
URLに「www」がついているのとついていないサイトについて
http://www.hoge.com/
と
http://hoge.com/
の2つのURLがあるとして、どちらも表示される内容は同じでもSEOの観点で見ると別サイトと取られてしまいページランクが下がってしまうことがある。
これは俗に重複URL問題と言われる(キリッ
2009年に入ったあたりからようやく対策として「rel=”canonical”」が提言されるようになってきてはいるが、最初からmod_rewriteを使って「www無しのURLからwww有りのURLへリダイレクトしちゃえばいいんじゃな〜い?」というわけでその方法をメモメモ。
ここでは、仮ドメインを「hoge.com」としmod_rewriteの記述を.htaccessに行うものとする。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^hoge.com$
RewriteRule ^/(.*)$ http://www.hoge.com/$1 [R=301,L]
やってることを説明すると、
www無しのアクセスに対して、www付きURLへ301リダイレクトをかけてるだけ。
/(スラッシュ)以降のURLもそのまま引き継げるのでGETパラメータでの処理にも対応可能。
POSTパラメータはどうなるのかはやったことないので不明。
でもおそらくPOSTは渡せないんじゃないかなと予想。
Posted at 2010/05/21 (Fri) | Category IT[Apache]
No comments | No Trackbacks | PageURL |
mod_rewriteを用いて動的URLを静的URLに変換する
静的URLでアクセスし、GETパラメータを渡す方法のメモ。
具体例を挙げると
http://www.hoge.com/item/(****)/
↓
http://www.hoge.com/item.html?id=(****)
という風に変換する場合について記述する。
ここでは(****)は数字のみという前提で話を進める。
もちろん、数字以外でも応用可能だが正規表現の話になるのではここでは割愛。
方法は以下の2種類
[1]httpd.confに直接記述した後にApacheをリロード(または再起動)
[2].htaccessに記述
どちらも記載する内容は以下の通り
RewriteEngine on
RewriteRule ^item/([0-9]+)/$ item.html?id=$1 [L]
この2行でOK。
mod_rewriteでエラーが出る場合、以下の点をチェックしてみると解決できるかも。カモ肉おいしいよね。
[1]Apacheにmod_rewriteが読み込まれていない
→httpd.conf内を「mod_rewrite」で検索してみるのが最も手っ取り早い。
[2]httpd.confに直接書いてから、Apacheをリロードしていない
→とりあえずApacheをリロード。
[3]Options ディレクティブにFollowSymLinksが記載されていない
→.htaccessで処理する人にはありがちかと。というか自分がまさにこれを忘れがち。
Posted at 2010/05/21 (Fri) | Category IT[Apache]
No comments | No Trackbacks | PageURL |
«Prev || 1 ·
| Next»