.htaccess では、フォルダーのパスワード保護、ユーザーの自動リダイレクト、エラー ページのカスタマイズ、ファイル拡張子の変更、特定のユーザー IP アドレスのブロック、特定の IP アドレスのみの許可、ディレクトリ リストの停止、他のファイルのインデックス ファイルとしての使用など、さまざまな操作を実行できます。 1. はじめに ファイル名.htaccess 属性 644 (RW-R–R–) htaccess は、それが配置されているディレクトリの下にあるすべてのサブディレクトリに影響します。ほとんどのコンテンツは 1 行に収める必要があり、折り返さないでください。そうしないとエラーが発生します。 2. エラー文書 公式文書: ErrorDocument ディレクティブ エラードキュメントコードドキュメント 例 エラードキュメント 400 /errors/badrequest.html エラードキュメント 404 http://yoursite/errors/notfound.html エラードキュメント 401「認証が必要です」 (以下の内容に二重引用符がある場合は、\" としてエスケープする必要があることに注意してください) 一般的な HTTP ステータス コード 成功したクライアントリクエスト 200 大丈夫です 201 作成済み 202 承認済み 203 非権威情報 204 コンテンツなし 205 コンテンツをリセット 206 部分的なコンテンツ クライアントリクエストがリダイレクトされました 300 複数選択問題 301 永久に移動 302 一時的に移動 303 その他を見る 304 変更されていません 305 プロキシを使用する クライアントリクエストエラー 400 不正なリクエスト 401 認証が必要です 402 支払いが必要です (まだ使用されていません) 403 禁止 404 見つかりません 405 メソッドは許可されていません 406 受け入れられません (エンコード) 407 プロキシ認証が必要です 408 リクエストがタイムアウトしました 409 競合するリクエスト 410 消えた 411 コンテンツの長さが必要です 412 前提条件が失敗しました 413 リクエストエンティティが長すぎます 414 リクエスト URI が長すぎます 415 サポートされていないメディアタイプ サーバーエラー 500 内部サーバーエラー 501 実装されていません 502不正なゲートウェイ 503 サービスは利用できません 504 ゲートウェイタイムアウト 505 HTTP バージョンがサポートされていません 3. パスワード保護 公式文書: 認証、承認、アクセス制御 パスワードファイルは.htpasswdであると仮定します AuthUserFile /usr/local/safedir/.htpasswd (ここではフルパス名を使用する必要があります) AuthName パスワードを入力 認証タイプ 基本 一般的な検証方法は 2 つあります。 ユーザーwindixを要求する (ユーザーwindixのみがログインできます) 有効なユーザーを要求する (正当なユーザーであればログインできます) ヒント: htpasswd コマンド (Apache 組み込み) を使用してパスワード ファイルを生成する方法 最初の世代ではパスワードファイルの作成が必要です htpasswd -c .htpasswd ユーザー1 後で新しいユーザーを追加する htpasswd .htpasswd ユーザー2 4. htaccess 経由で SSI を有効にする 追加タイプ text/html .shtml AddHandler サーバー解析 .shtml オプション インデックス FollowSymLinks 含む ディレクトリインデックス index.shtml index.html 5. IPによるユーザーのブロック 注文 許可、拒否 123.45.6.7 からの拒否 12.34.5 からの拒否 (クラス C アドレス全体) すべてを許可する 6. リファラーによるユーザー/サイトのブロック リファラーによるユーザー/サイトのブロックには mod_rewrite モジュールが必要です 例 1. 単一のリファラーをブロックする: badsite.com RewriteEngineオン # オプション +FollowSymlinks 書き換え条件 %{HTTP_REFERER} badsite\.com [NC] 書き換えルール .* – [F] 例 2. 複数のリファラーをブロックする: badsite1.com、badsite2.com RewriteEngineオン # オプション +FollowSymlinks 書き換え条件 %{HTTP_REFERER} badsite1\.com [NC、OR] 書き換え条件 %{HTTP_REFERER} badsite2\.com 書き換えルール .* – [F] [NC] – 大文字と小文字を区別しない [F] – 403 禁止 上記のコードでは、「Options +FollowSymlinks」ステートメントがコメント アウトされていることに注意してください。サーバーの httpd.conf セクションで FollowSymLinks が設定されていない場合は、この文を追加する必要があります。そうしないと、「500 内部サーバー エラー」エラーが発生します。 7. 悪質なボットとサイトリッパー(オフラインブラウザとも呼ばれます)をブロックする 悪質なボットとオフラインブラウザをブロックするには、mod_rewrite モジュールが必要です 悪質なボットとは?たとえば、スパムメール アドレスを取得するボットや robots.txt に準拠していないボット(Baidu など)などです。 HTTP_USER_AGENTに基づいて決定できます。 (しかし、「zhongsou.com」のように、エージェントを「Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)」に設定する恥知らずなサイトも存在します。これはあまりにも悪質で、私たちには何もできません。) RewriteEngine オン RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [または] RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:[email protected] [または] 書き換え条件 %{HTTP_USER_AGENT} ^ChinaClaw [または] RewriteCond %{HTTP_USER_AGENT} ^カスタム [または] 書き換え条件 %{HTTP_USER_AGENT} ^DISCo [または] RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon [または] RewriteCond %{HTTP_USER_AGENT} ^eCatch [または] RewriteCond %{HTTP_USER_AGENT} ^EirGrabber [または] RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [または] RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [または] RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures [または] RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro [または] 書き換え条件 %{HTTP_USER_AGENT} ^EyeNetIE [または] RewriteCond %{HTTP_USER_AGENT} ^FlashGet [または] 書き換え条件 %{HTTP_USER_AGENT} ^GetRight [または] RewriteCond %{HTTP_USER_AGENT} ^GetWeb! [または] RewriteCond %{HTTP_USER_AGENT} ^Go!Zilla [または] RewriteCond %{HTTP_USER_AGENT} ^了解 [OR] 書き換え条件 %{HTTP_USER_AGENT} ^GrabNet [または] RewriteCond %{HTTP_USER_AGENT} ^Grafula [または] RewriteCond %{HTTP_USER_AGENT} ^HMView [または] 書き換え条件 %{HTTP_USER_AGENT} HTTrack [NC、OR] RewriteCond %{HTTP_USER_AGENT} ^Image\ ストリッパー [または] RewriteCond %{HTTP_USER_AGENT} ^Image\ Sucker [OR] RewriteCond %{HTTP_USER_AGENT} Indy\ ライブラリ [NC、OR] 書き換え条件 %{HTTP_USER_AGENT} ^InterGET [または] RewriteCond %{HTTP_USER_AGENT} ^インターネット\ Ninja [または] 書き換え条件 %{HTTP_USER_AGENT} ^JetCar [または] RewriteCond %{HTTP_USER_AGENT} ^JOC\ Web\ Spider [または] RewriteCond %{HTTP_USER_AGENT} ^larbin [または] RewriteCond %{HTTP_USER_AGENT} ^LeechFTP [または] RewriteCond %{HTTP_USER_AGENT} ^Mass\ ダウンローダー [または] RewriteCond %{HTTP_USER_AGENT} ^MIDown\ ツール [または] RewriteCond %{HTTP_USER_AGENT} ^Mister\ PiX [または] RewriteCond %{HTTP_USER_AGENT} ^Navroad [または] RewriteCond %{HTTP_USER_AGENT} ^NearSite [または] 書き換え条件 %{HTTP_USER_AGENT} ^NetAnts [または] RewriteCond %{HTTP_USER_AGENT} ^NetSpider [または] RewriteCond %{HTTP_USER_AGENT} ^Net\ ヴァンパイア [OR] RewriteCond %{HTTP_USER_AGENT} ^NetZIP [または] 書き換え条件 %{HTTP_USER_AGENT} ^Octopus [または] RewriteCond %{HTTP_USER_AGENT} ^オフライン\ エクスプローラー [または] RewriteCond %{HTTP_USER_AGENT} ^オフライン\ ナビゲーター [または] RewriteCond %{HTTP_USER_AGENT} ^PageGrabber [または] RewriteCond %{HTTP_USER_AGENT} ^Papa\ Foto [OR] RewriteCond %{HTTP_USER_AGENT} ^pavuk [または] RewriteCond %{HTTP_USER_AGENT} ^pcBrowser [または] RewriteCond %{HTTP_USER_AGENT} ^RealDownload [または] RewriteCond %{HTTP_USER_AGENT} ^ReGet [または] RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger [または] RewriteCond %{HTTP_USER_AGENT} ^SmartDownload [または] RewriteCond %{HTTP_USER_AGENT} ^SuperBot [または] RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP [または] RewriteCond %{HTTP_USER_AGENT} ^Surfbot [または] 書き換え条件 %{HTTP_USER_AGENT} ^tAkeOut [または] RewriteCond %{HTTP_USER_AGENT} ^Teleport\ Pro [または] 書き換え条件 %{HTTP_USER_AGENT} ^VoidEYE [または] RewriteCond %{HTTP_USER_AGENT} ^Web\ Image\ Collector [または] RewriteCond %{HTTP_USER_AGENT} ^Web\ Sucker [OR] RewriteCond %{HTTP_USER_AGENT} ^WebAuto [または] RewriteCond %{HTTP_USER_AGENT} ^WebCopier [または] RewriteCond %{HTTP_USER_AGENT} ^WebFetch [または] 書き換え条件 %{HTTP_USER_AGENT} ^WebGo\ IS [OR] RewriteCond %{HTTP_USER_AGENT} ^WebLeacher [または] RewriteCond %{HTTP_USER_AGENT} ^WebReaper [または] RewriteCond %{HTTP_USER_AGENT} ^WebSauger [または] RewriteCond %{HTTP_USER_AGENT} ^Website\ eXtractor [または] RewriteCond %{HTTP_USER_AGENT} ^Website\ Quester [または] RewriteCond %{HTTP_USER_AGENT} ^WebStripper [または] RewriteCond %{HTTP_USER_AGENT} ^WebWhacker [または] RewriteCond %{HTTP_USER_AGENT} ^WebZIP [または] RewriteCond %{HTTP_USER_AGENT} ^Wget [または] RewriteCond %{HTTP_USER_AGENT} ^Widow [または] RewriteCond %{HTTP_USER_AGENT} ^WWWOFFLE [または] RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [または] 書き換え条件 %{HTTP_USER_AGENT} ^Zeus 書き換えルール ^.* – [F,L] [F] – 403 禁止 [L] – リンク 8. デフォルトのディレクトリページを変更する ディレクトリインデックス index.html index.php index.cgi index.pl 9. 単一ファイルへのリダイレクト /old_dir/old_file.html を http://yoursite.com/new_dir/new_file.html にリダイレクトします ディレクトリ全体 /old_dir を http://yoursite.com/new_dir にリダイレクトします 効果: ディレクトリを移動するのと同じ http://yoursite.com/old_dir -> http://yoursite.com/new_dir http://yoursite.com/old_dir/dir1/test.html -> http://yoursite.com/new_dir/dir1/test.html ヒント: ユーザー ディレクトリの使用時にリダイレクトが機能しない問題の解決方法 http://mysite.com/~windix などの Apache のデフォルトのユーザー ディレクトリを使用している場合、http://mysite.com/~windix/jump にリダイレクトすると、次のリダイレクトが機能しないことがわかります。 リダイレクト / ジャンプ http://www.google.com 正しい方法は変化すること リダイレクト /~windix/jump http://www.google.com (出典: 「サイト」内の .htaccess リダイレクトがリダイレクトされない: なぜでしょうか?) ) 10. .htaccessファイルの閲覧を禁止する 注文 許可、拒否 すべてを拒否する 11. MIMEタイプの追加 AddType アプリケーション/x-shockwave-flash swf ヒント: ダウンロードを促すには、タイプを application/octet-stream に設定してください 12. 画像やその他のファイルタイプのホットリンクを防止するホットリンク防止にはmod_rewriteモジュールが必要 RewriteEngineオン 書き換え条件 %{HTTP_REFERER} !^$ 書き換え条件 %{HTTP_REFERER} !^http://(www/\.)?mydomain.com/.*$ [NC] 書き換えルール \.(gif|jpg|js|css)$ – [F] 分析: HTTP_REFERER が空でない場合(ソースは直接接続ではなく別のサイトです)、HTTP_REFERER が (www.)mydomain.com で始まっていない場合(大文字と小文字を区別しません [NC])(ソースはこのサイトではありません) .gif/.jpg/.js/.css で終わるすべてのファイルに対して 403 Forbidden エラーを返す [F] 次の例に示すように、応答を指定することもできます。 書き換えルール \.(gif|jpg)$ [R,L] [R] – リダイレクト [L] – リンク 13. ディレクトリリストの防止 インデックス無視* インデックス無視 *.jpg *.gif ヒント: ディレクトリ一覧表示を許可する: オプション + インデックス ディレクトリ一覧を無効にする: オプション -Indexes プロンプト情報を表示: HEADER ファイル、README ファイル |
>>: ixwebhosting 専用 IP と共有 IP スイッチング
OneAsiaHost は、OpenVZ および KVM アーキテクチャに基づく VPS を提供す...
CloudCone は比較的アクティブなホスティング プロバイダーで、主にロサンゼルス MC VP...
アメリカのホスティングプロバイダーであるBandwagonHost(中国語名:BandwagonHo...
Hostodo では、次のとおり割引の新たな波が起こっています。 VZ-512 CPU: 4コア メ...
LAUNCH VPS は、アメリカのホスティング プロバイダーで、主に仮想ホスティング、VPS など...
Singularity Cloud は 2019 年に設立され、現在、建国記念日特別オファーとして...
VPS は最近非常に安価で、多くのウェブマスターが使用していると思います。しかし、毎月の過剰なトラフ...
hubiCは無料のクラウドストレージサービスです。登録後、25GBの無料容量が付与されます。また、他...
アメリカの業者であるHop One Networksは、主に独立したサーバーを提供しています。データ...
英国のホスティング プロバイダーである Host On A Rope (Linux Based Sy...
Time4VPS は、主に VPS を提供するリトアニアのホスティング会社です。LT2635073...
ABCloud 新規加盟店 HKT NAT VM 新規オファー新規ユーザーは10%割引ABClou...
AlphaRacks は何度も紹介されています。私は 1G OVZ を 2 つ所有していますが、安定...
MNX.io は最近設立された米国のホスティング会社です。同社は、SSD ハード ドライブ、大容量...
期間限定特別オファー、急いでご参加ください! !シカゴ CHI ストレージ: 2 CPU コア10 ...