AWS上に置いたWordPressでパーマリンクが動かなかったので、Apacheの設定をしてみました

AWS上のWordPressで、パーマリンク設定が動かずどうしようか悩んでいた時、Apacheの設定をWinSCPを使い設定をしてみたところ、解決したので、そのメモを残しておきます。

解決には以下のサイトを参考にさせていただきました。感謝です!
65歳からのWordPress古希の爺のWordPress
https://www.koki.muhen.jp/archives/1110

※ちなみに私はデザイン・フロント側担当なので、サーバーサイドの知識が乏しいです。そのため、WinSCPを使用してます。

1.mod_rewriteを有効にする

/etc/apache2/mods-available/rewrite.load

このファイルを開き、下記を記述する

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

その後、a2enmodコマンドを実行する。
WinSCP上では、黒い画面から以下のように記述して実行する。

sudo a2enmod rewrite

2./etc/apache2/apache2.confの修正

/etc/apache2/apache2.conf

このファイルを開き、172行目あたりにある記述を変更する。

<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride All
	Require all granted
</Directory>

AllowOverride None を
AllowOverride All にしました。

3.WordPressのパーマリンクを確認

WordPressでパーマリンクを設定すると、.htaccessが書き換えられるように.htaccessに権限を与えておき(WinSCPでファイルのパーミションを666としました)、WordPressの管理画面から設定します。

設定後の.htaccessは以下の記述が追加されています。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

4.再起動

最後に再起動します。
これもWinSCPで行い、動くようになりました。

代表取締役社長:吉田 基崇 Webサイト制作
Webシステム・サービス開発
顧客アプリ開発
[本店]
〒815-0081
福岡市南区那の川1-19-20
[東京支店]
〒131-0043
墨田区立花2-26-11
有限会社出沼木工所内
Tel:092-983-6427 Fax:092-983-6428 法人番号:2290001046747
法人番号指定年月日:平成27年10月5日
適格請求書発行事業者登録番号:T2290001046747
適格請求書発行事業者登録日:令和5年10月1日

私たちは日本と世界の全ての子どもたちが
希望と未来と愛に満たされることを
目標にIT活動を命をかけて実施します。

あらゆる違い、言語、文化、宗教、貧富の差を越えた学び場づくり、
世界を育てる人材の育成と支援の
研究開発と普及と実践を行います。

タッチされた!