フリーランス|WEB 制作経験丸7年、制作会社様からのご依頼に丁寧・高クオリティでお手伝いいたします。 IRODORI DESIGN

B L O G

【WordPress】パーマリンク設定を変更後に403エラーになる時の解決方法

.htaccess
403 Forbidden
500 Internal Server Error
WordPress
パーマリンク設定

こんにちは、岐阜・名古屋を拠点に全国各地からご依頼いただくWEBサイトを制作しているフリーランスエンジニアの寺井です。

WordPressの管理画面からパーマリンク設定を変更すると急に真っ白になってエラー文章が表示されてしまうことがあります。
急にサイトが壊れてしまうと焦りますよね。
調べてみると簡単に直ることが分かりました。

この記事ではパーマリンク設定を変更した後に403エラーになってしまった時の解決方法をご紹介したいと思います。

パーマリンク設定を変更後に403エラーになる時の解決方法

WordPressの管理画面でパーマリンク設定のページで「変更を保存」をクリックすると「403 Forbidden」という403エラーが表示されることがあります。

Forbidden

You don't have permission to access /renewal/ on this server.

パーマリンク設定を変更後に403エラーになってしまうときは.htaccessに下記を追加することで解決します。

Options +FollowSymLinks

ただし、一部のサーバーでは「500 Internal Server Error」という500エラーとなってしまいます。
僕が確認した限りではCPIサーバーの場合は500エラーとなりました。

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, XXXX@XXX.XX and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

その場合は、Options +FollowSymLinksの代わりに以下を.htaccessに追加することで解決します。

Options +SymLinksIfOwnerMatch

これでエラーは解消され、WordPressのサイトが復活すると思います。

それでも解決しない場合は

ネットで同じ症状について調べると、どの記事もOptions +FollowSymLinks、またはOptions +SymLinksIfOwnerMatchを.htaccessに追加することでエラーが解消すると書かれていますが、僕の場合は解決しませんでした。

どの記事もこれ以上のことは書いていなくて途方に暮れていましたが、Options +FollowSymLinks、またOptions +SymLinksIfOwnerMatchを記述したうえで、WordPressをインストールしているディレクトリのパーミッションを644に変更することでエラーが解消しました。

wp/ ← ここのパーミッションを644にする
 ├ wp-admin/
 ├ wp-content/
 ├ wp-includes/
 :
 ├ index.php
 :

恐らくエラーの原因を調べているうちにアクセス権限、パーミッションの設定が原因でエラーになっているかもという記事を見たため、とりあえず「777」を試してそのままにしていたことが原因だったみたいです。

もしパーミッションが「644」であれば、Options +FollowSymLinks、またはOptions +SymLinksIfOwnerMatchを.htaccessに追加するだけで解消すると思いますが、もしそれでも直らないという場合はパーミッションの設定を確認してみましょう。

まとめ

いかがでしたか?
このエラーはリライト機能が正しく動作しない時に起こるようです。
しかし、このエラーは基本的に簡単に直るものなので焦らず対処していきたいですね。