1. sunnyG

    No comment

    sunnyG
Changes in body
Source | HTML | Preview
@@ -1,61 +1,72 @@
htaccessと言う単語自体はちょくちょく聞いたりしてたんですが、
そもそもhtaccess自体が何なのか、何を指しているのかよくわからなかったので、
それに関しての備忘録です。
#.htaccess とは
.htaccess(ドット・エイチ・ティ・アクセス)とは、Apache(アパッチ)などのソフトウェアが使用されている環境で使用可能なディレクトリ単位のWebサーバー設定ファイルです。
これが特定のディレクトリに設置されると、「.htaccess」内に記述されている内容が、設置されたディレクトリ内とその下層のディレクトリ内に対して適用されます。
#いつ .htaccess ファイルを使うか
##基本使わない
**基本的に、.htaccess ファイルの使用は極力避けてください。**
ユーザ認証の設定は httpd.conf (サーバ主設定ファイルのこと) に書くことができますし、実際その方がより良い設定方法とされています。
##どんな時に使用すべきか
.htaccess ファイルは、ディレクトリ毎の設定を行ないたいけれど、サーバシステムの root アクセス権限を持っていないという場合にのみ使うべきものです。
サーバ管理者が頻繁に設定変更を行ないたくはない、というときには個々のユーザが .htaccess ファイルを使って個々で設定変更を行なうことを許可したい!そんな時に使用します。
しかし、使用する場合は、httpd.conf で[AllowOverrideディレクティブ][allowoverride]を使って、最低限の許可しか与えないようにすべきですね。
#.htaccess ファイルの作り方
windows環境では、「.htaccess」というネーミングでファイル作成ができません。
その為、以下の手順での作成が必要です。
>
1. テキストエディタで『○○○○.htaccess』という名前のファイルを作成して保存
2. Apacheで制御・設定したい事を記述し保存
1. サーバーにアップロードして『.htaccess』という名前にリネーム(ファイル名の変更)
-#.htaccess で、できる事
+#.htaccess で出来る事
代表的な4つの項目に分けて、順に設定手順を解説していきます。
##ベーシック認証
+ベーシック認証(Basic認証)とは、ディレクトリなどに認証を付けてID/パスワードの入力を強制する仕組みのことです。
+用途としては、以下のようなものがあります。
-.htaccessに記載する内容
+>
++ 公開前のサイトをユーザーとGooglebot共に弾きたい場合
++ アイパスを知っている人だけに公開したい場合
+
+こちらを設定するには、「.htpasswd」というファイルも必要になります(作成手順に関しては、上述している.htaccessファイルの作成手順と同じです)
+
+まず、「.htaccess」に下記内容を記述してください
```text
AuthUserfile /フルパス/.htpasswd # ←パスワードファイル(.htpasswd)までのフルパス
AuthGroupfile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
```
-.htpasswdに記載する内容
+上記の、「AuthUserFile」に記述しているパスに、「.htpasswd」を配置する必要があります。
+
+次に、「.htpasswd」に下記内容を記述してください。
```text
id:password
```
+idはそのまま記載しますが、passwordの箇所は暗号化する必要があるので[こうしたサイト][makePass]を利用して暗号化します。
#参考
[Apacheチュートリアル : .htaccessファイル][apache]
[.htaccessの作成・設定まとめ][Link1]
[allowoverride]:http://httpd.apache.org/docs/trunk/ja/mod/core.html#allowoverride
[apache]:https://httpd.apache.org/docs/2.4/ja/howto/htaccess.html
[Link1]:https://whitebear-seo.com/how-to-htaccess-matome/
[makePass]:http://tech-unlimited.com/makehtpasswd.html