.htaccessがある場所と書き方【初心者向け】

kaoleft
.htaccess(エイチティーアクセス)ファイルを編集することでWebサーバーの挙動を制御することができます

主にこのような設定ができます。

  • リダイレクト
  • Basic認証。IDとパスワードを指定してWebサイトへのアクセスを制限
  • IPアドレスのアクセスを制限
  • セキュリティ。ファイルを守る

.htaccessがある場所

WordPressをお使いの場合は大概ここに入っているかと思います。

サイト/public_html/.htaccess

 

基本の.htaccessは削除しない

WordPressをインストールした直後の .htaccessは削除しないようにします。

# BEGIN WordPress
# "BEGIN WordPress" から "END WordPress" までのディレクティブ (行) は
# 動的に生成され、WordPress フィルターによってのみ修正が可能です。
# これらのマーカー間にあるディレクティブへのいかなる変更も上書きされてしまいます。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

 

バックアップ

.htaccessは1文字間違えただけでサイトが真っ白になったりアクセスできなくなります。設定する前に、FTPソフトやサーバーから.htaccessファイルをバックアップしておくと安心です。

【FTPソフト】FileZillaのインストール&接続方法

 

ミラーサイトでテスト

お名前.comではドメインを1円(キャンペーン時は0円!)で取得してミラーサイトを作成しておけば、失敗してもWordPressの初期化だけで済みます。テスト用のドメインは「更新なし」にしておきます。

 

記述場所

これ↓の上に追記します。

# BEGIN WordPress

良く分からない場合は冒頭に追記すると良いです。

冒頭に # がある行はコメントです。コメントを日本語で書くとエラーになったり、文字化けをする場合があるので半角英数字を使います。

尚、# BEGIN WordPressから# END WordPressの間は、WordPressのための設定場所になり、プラグインなどで自動的に書き換えられる場合があります。

 

FTPで編集

.htaccessファイルをサクラエディタなどで開き、「UTF-8」「BOMなし」で保存したら、FTPソフトで上書きします。

【FTPソフト】FileZillaのインストール&接続方法

◇サクラエディタのインストール方法【Windows10】

 

サーバー/ファイルマネージャーで編集

FTPで上書きすると文字化けすることがあるので、慣れるまではサーバーやファイルマネージャーで編集した方が良い場合もあります。

エックスサーバーの場合

設定対象ドメインを選択したら、ホームページ項目にある「.htaccess編集」→コードを追記したら右下にある「確認画面へ進む」→次の画面で「実行する」をクリックします。

ファイルマネージャー

.htaccessにチェックを入れたら、右横にある「編集」ボタンをクリック→追記→「保存する」をクリックします。

 

注意点

1.文字化けに注意

再確認したら記号が数字で表示されていてびっくり。

RewriteRule .(jpg|png|jpeg|gif)$ &#8211; [NC,F,L]

2.使っていないコードを削除

追記を繰り返した結果、重複コードがありましたので削除しました。

まずは、以前に使っていたSimplicityなどの「テーマを高速化するためのコード」を削除しました。また、プラグインを追加すると自動的に書き加えられる場合がありますが、たとえば「EWWW Image Optimizer」は現在は使っていないので削除しました。

# BEGIN EWWWIO
# END EWWWIO
kaoleft
この作業でサイトの読み込みが早くなった

参照→.htaccessに2000行書くとApacheの処理が何秒遅くなるか測ってみた Web担当者Forum

3.自動的に追記されたコードは削除しない

テーマや、サーバーの設定時に自動的に追記される.htaccess環境変数は削除しないようにします。

たとえば、エックスサーバーでは「大量コメント・トラックバック制限をOFF」にすると自動的にこのようなコードが追記されます。

SetEnvIf Request_URI ".*" WpCommentNoLimit

国外IPアドレスからのコメント・トラックバック制限をONにすると自動的に追記。

SetEnvIf Request_URI ".*" WpCommentDeny

Xアクセラレータ(Webサイトを高速・安定化させるための機能)を設定すると、自動的に追記されます。尚、サーバーキャッシュ設定を有効にすることでXアクセラレータが有効になります。

SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode=off
SetEnvIf Request_URI ".*" Ngx_Cache_StaticMode

◇エックスサーバーのセキュリティ設定色々

 

.htaccessに記載した方が良いコード【初心者向け】






サイト運営
わたしらしく