連載第80回
2014年7月6日
WP パーマリンク設定でカスタム構造を選んだらNot Found 404

 前回でようやく新URLルートでの表示が可能になったものの、〆切直前にまるで予想だにしなかったトラブルのコンボアタックが襲ってくるのは、どの業種どの分野、どこの国でも老若男女に限らずお約束のようです。全く不思議な現象です。
 普通にサイトが表示されるようになったから、まずは動作確認用に簡単なテキストと画像を用意し、ダッシュボード上からサーバーへアップロードしようと考えました。ここでまず画像のアップロードで引っ掛かりました。「uploadsフォルダの権限がおかしいですよー」と警告が出て、エラーが起きてしまうのです。「ユーザーか所有者の設定かしらん?」等々しばらく悩んだのですが、これは結局、基本中の基本であるアクセス権の設定に原因がありました。Coda 2からuploadsフォルダの情報を見て、「755」から「757」に修正して解決。

個別記事が表示されない…不可思議

 画像をアップロードし、適当なテキストを加え仮の記事を仕上げます。まずそれをプレビューしようとして異常に気付きました。新規タブが開いてその下書きが現れるのを期待したところに表示されたのは「Not Found」の文字。
 まず何が原因なのかさっぱり思い付かない。アップロードしたindex.phpはローカルでは問題なく動作していたものだし、タイプミスやパスの間違いはどこを探しても見当たらない。困惑するのは、トップページには何ら問題ないというこで、そこにはその記事のタイトルがしっかりと掲載されており、もちろんダッシュボード内からも記事が間違いなく存在することは確認出来るんだけれど、しかし、その記事タイトルをクリックして、本文テキストを表示させようと個別ページへ移動したところで「Not Found」。その繰り返し。

 ググってみました。同じような症状で悩まされた人々の報告がずらり並びます。ところがここでさらに困惑したのは、その解決方法が十人十色だということ。症状としては同じようなものなのですが、対症方法がバラエティに富み過ぎて、果たして自分が今陥っている状況がどれに該当するのか(つまり原因が解らないから)見当が付かないのです。

 それらを虱潰しに検証してゆくのに、かなり多くの時間を費やしました。行った対応の全てを書き残しておくのはとても気力が持たないので、僕のサーバー環境で起きたトラブルの解決方法だけメモしておきます。最後の最後に、僕を窮地から救い出してくれたのはコチラの記事。

パーマリンク設定カスタム構造で404(Salty WordPress)

Apacheのhttpd.confの設定を修正

 上の記事によると、Apacheの設定ファイルである「httpd.conf」を開き、そこへ直接、必要なコードを書き足せば良いらしい。webminで操作出来れば良いのだけれど、生憎そんなことは出来ないので、久々にあのチョー使い難い「vi」の登場です。

 まずは作業に入る前にバックアップを取っておきます。

# cp -p /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.ORG

 そして「vi」でファイルを開くのですが、ここで参考にするのは自分のメモ「第14回:vi って何コレ使いにくい!」。もう何から何まで忘れています。あ、:q! と :wq は覚えてる。絵文字っぽいから。とりあえず操作に迷ったらescで逃げる事。

# vi /etc/httpd/conf/httpd.conf

 しかしこの「httpd.conf」、予想外に長大で、カーソルを全文下って最下部まで持って行くのに延々とテキストがスクロールしていくのを眺めていました。何とか最下部まで到達したら、次のコードをコピペします。

httpd.confへの追記

<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

 :wq で上書き保存したら、Apacheの再起動。

Apacheの再起動

# /etc/rc.d/init.d/httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]

 これでようやく個別の単体記事ページが表示されるようになりました。しかし、上で紹介した参考記事にうまく巡り合えなかったら、これまでの苦労が全て水泡に帰していたワケで、ちょっと考えると怖いものがあります。ひとまず目前のトラブルは解決したものの、しかしまた何か新手のトラップが待ち受けているような気がする…。つづく。