web/htaccess の履歴の現在との差分(No.1)


  • 追加された行はこの色です。
  • 削除された行はこの色です。
#author("2023-11-08T12:59:12+09:00","default:nemusg.pad","nemusg.pad")
* htaccess [#xfcec5f6]
#author("2023-11-08T14:15:21+09:00","default:nemusg.pad","nemusg.pad")
* .htaccess [#xfcec5f6]

#contents

** 確認ツール [#w2c2b58d]

HTTPステータスコードを一括で確認できるので設定の確認に便利
[[HTTPステータスコード:https://ja.wikipedia.org/wiki/HTTP%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89]]を一括で確認できるので設定の確認に便利

- [HTTP Status Code Checker](https://httpstatus.io/)
-- [HTTPステータスコード](https://ja.wikipedia.org/wiki/HTTP%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89)
- [[HTTP Status Code Checker:https://httpstatus.io/]]

** 生成ツール [#q867eb8d]

- [htaccess/リダイレクト(サイトの引越し)](https://htaccess.cman.jp/explain/redirect.html)
- [[htaccess/リダイレクト(サイトの引越し):https://htaccess.cman.jp/explain/redirect.html]]

** エラーページ設定 [#e45dc7b4]

#code_x{{
ErrorDocument 404 /error/404.html
ErrorDocument 500 /error/500.html
}}

#code_x{{
404 http://example.com/error/404.html
}}

のように絶対パスにすると、アドレスバーがエラーページに遷移してしまい少し不親切。できれば相対パスにしたい。

** ドメイン変更 [#ed1e9957]

Permanently(永久)に移転するときは301リダイレクトを使う
移転先でもページの階層構造が維持されていることが前提

#code_x{{
RewriteCond %{HTTP_HOST} ^(old.nemusg.com)(:80)? [NC]
RewriteRule ^(.#) http://new.nemusg.com/$1 [R=301,L]
}}

これでも同じ動作をする

#code_x{{
Redirect permanent / http://new.nemusg.com/
}}

階層構造が維持されておらず、ドメイン全体→1つのページに転送したい場合は下記になる

#code_x{{
RedirectMatch 301 (.#) http://new.nemusg.com/
}}

.htaccessが使えない環境ではmetaタグを使う

#code_x{{
<meta http-equiv="refresh" content="0;URL='http://new.nemusg.com/'">
}}

*** RewriteRuleにアンカーリンク#を書きたい [#k88f2400]

NEフラグを追加する

#code_x{{
RewriteRule ^(.#) http://new.nemusg.com/#anker [R=301,L,NE]
}}

** ドメインをwwwなしに統一 [#a5af2b8a]

#code_x{{
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.nemusg\.com)(:80)? [NC]
RewriteRule ^(.#) http://nemusg.com/$1 [R=301,L]
}}

よりも

#code_x{{
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,L]
}}

のほうが汎用的そう

** 画像の直リンクを防止する [#b4cdbe31]

- うまくいけば画像を外部サイトで表示しようとした場合403エラーになる
- Googleは許可

#code_x{{
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?nemusg\.com [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]
}}

** 参考リンク [#xa90019f]

- .htaccessの書き方の基本
//-- [[htaccessの書き方 | murashun.jp:https://murashun.jp/blog/20141229-01.html]]
-- [[htaccess の使い方や書き方・設置方法/ Web Design Leaves:http://www.webdesignleaves.com/pr/html/htaccess.html]]
//-- [[【分かって書いてる?】htaccessの書き方と設定方法まとめ:http://ad-library.jp/htaccess/]]
- WordPress関連
-- [[WordPressに作成されるhtaccessの動作を改めて確認しておこう - ええかげんブログ(本店):http://algorhythnn.jp/blg/2014/08/25/wordpress-htaccess-check/]]
- フラグ関連
-- [[RewriteRuleのフラグと、RewriteCondの変数一覧:https://qiita.com/tsukaguitar/items/e37245260f0b1407341d]]
-- [[htaccess に RewriteRule 書くときは、Lフラグをつけてもそこで終了しないかもよ?って話。:https://qiita.com/ezaki/items/87c2dff8f7753ef048d2]]
- 301リダイレクト設定について
-- [[サイトリニューアル時の301リダイレクト、htaccess記述方法いろいろ:https://digital-marketing.jp/creative/site-renewal-301-redirect/]]
- 直リンク禁止について
-- [[画像の直リンクを禁止する方法 – ysklog:http://ysklog.net/server/1281.html]]
-- [[画像直リンクの禁止 - ロリポップ!:http://lolipop.jp/manual/hp/htaccess-06/]] 拒否がうまくいっているか確認ができる
-- [[画像への直リンク防止策 - kotonoha:https://emmalanglab.com/prevent-hotlinking/]] 設定しやすそう
- 生成ツール
-- [[htaccess/リダイレクト(サイトの引越し) - cman.jp:https://htaccess.cman.jp/explain/redirect.html]]