さくらインターネットのコントロールパネルからWordPressをインストールするもForbiddenのエラー

Forbidden

you don't have permission to access this resource.

などと表示され、WordPressの初期設定画面に飛べない場合。

WordPressのインストールされている一番上のディレクトリの.htaccessに下記を追記

DirectoryIndex index.html index.htm index.php .ht

で解決する。

500 Internal Server Errorの場合も同じ。

最終的なコードはこんな感じになる↓

# BEGIN SAKURA Internet Inc.
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/x-javascript application/javascript application/ecmascript
</IfModule>
<IfModule mod_expires.c>
ExpiresActive On
<FilesMatch "\.(css|js)$">
ExpiresDefault "access plus 1 week"
</FilesMatch>
<FilesMatch "\.(gif|jpe?g|png)$">
ExpiresDefault "access plus 1 month"
</FilesMatch>
</IfModule>
DirectoryIndex index.html index.htm index.php .ht
# END SAKURA Internet Inc.

ちなみにレンタルサーバーのConoha Wingならこのようなことは起きないので、こっちのほうがおすすめ。 

2023年4月現在、このサイトはConoha Wingを借りて運営しています。

追記:原因発覚

さくらインターネットのwwwフォルダ直下に設置されている.htaccessに余計な記述があるとこの現象が起こるらしい。

例えば自分の場合はwwwフォルダ直下の.htaccessが下記のように記述されていた。

DirectoryIndex .ht
AuthUserFile /home/アカウント名/www/.htpasswd
AuthType Basic
AuthName "Web access"
Satisfy all
Order deny,allow

全員の担当者から引き継いだのでこの記述が元からあったのかは不明。

さくらインターネットに問い合わせたら「クイックインストールだけで普通はWordPressにアクセスできる」という旨の回答をもらったので、多分初期値では書かれていない。

ちなみに上記の記述は、wwwディレクトリにアクセスする前にユーザーに基本認証を求めます。この基本認証は/home/アカウント名/www/.htpasswdというパスワードファイルを用いて実施されます。これは不正なアクセスを防ぐための一般的な手段であり、特定の部分のWebサイトを保護するために用いられます。
chatgpt

Basic認証のことらしい。.htpasswdなんてファイルなかったから多分動いてないけど。

ブラウザでアクセスするときや、サーバー内部から該当ディレクトリにアクセスするときに.htpasswdに定義されたユーザー名パスワードの入力を必要とするんだってさ。知らんけど。

なので、サイト毎のディレクトリ直下の.htaccessを書き換えるのが面倒であれば、

このwww直下の.htaccessを削除するなり.htaccess1とか別の名前にするなりしてあげれば解決する。

Conoha Wing

爆速で表示されるこのブログのサーバーはConoha Wingです。
詳細は下記!!

おすすめの記事