【仕事】いろんなことがまわりはじめた
※今日の日記は、専門用語たくさん出てきます。わからない人には、激しくつまらないものになりますが、自分の備忘録および、世の中の人で、同じトラブルに遭遇した人がいるかもしれないので、情報共有ということで。。。忙しい時に限って、次々と仕事がつみかさなるわけで・・・金曜日の朝一にある会議までに、会社のサイト内にあるPHPのフォームと、それに読み込まれているモジュールパーツ合わせて十数ページの修正をしないといけなくて、それにつきっきりになっていたんですが・・・うちの部署、数ヶ月前にサーバーを会社本体から独立させて、ドメインも取得したんです。そのため、今一時的にSEOが落ち込んでいるわけですが、これが幹部の逆鱗にふれたらしく、未だに検索エンジンで引っかかってしまう旧アドレスにアクセスすると、404エラーが出ることを指摘されまくったらしいです。まぁ、もっともなご意見だね、ってことでやりましたよ。.htaccessの設置。システム部に依頼するんですけど、いろいろ春の異動がありまして、うちの部署を担当してるのが去年の新人Yくん。まだサーバー設定になれてないので、こちらで.htaccessをつらつらと書いて(新旧でディレクトリ・ファイル構造が違うので面倒)、それを渡しつつ、まずは僕が管理している部署内にあるサーバーに試しに設置しながらY君に説明することに。今まで自分のサーバーでは.htaccessは許可してなかったなぁ、ってことで、apacheのhttpd.confを開いてみる。えーと、AllowOverrideをさがす。あった。「AllowOverride None」になってます。これだと、.htaccessは全く使えないので、「AllowOverride All」に変更。さて、これだけでOKかな?と思ったものの、念のため、もうちょい探してみるとAllowOverrideの設定は、ここ以外にも2ヶ所、合計で3ヶ所ありました。前後のコードの雰囲気から、htmlディレクトリに対するもの、cgiディレクトリに対するもの、ルートに対するものっぽいです。今回はHTMLだけでいいはずなので、HTMLのところをAllに変更。ここで、ハッと気づいちゃったんです。うちの部署でWORDPRESSを使ってブログを作ろうという話が1ヶ月ほど前に出ました。たしかこのブログでも書いた記憶が・・・インストール自体は一ヶ月前に済んでたのですが、そこからトラブルの嵐。。参りました。まず、インストール。インストーラーがうまく走らない。。。なんでだぁ?と、サーバーの立ち上げから保守までしてくれているシステム部のM君に相談。どうやら、サーバーの設定で、index.phpを、インデックスファイルと認識する設定ができていないってことで、サーバー側で設定を変更し、再度インストール。インストールはできるようになったものの、今度はログインできない。。なんでーーー?M君いわく、cgi-binディレクトリ以下で作ろうとしているからじゃないか、とのこと。確かに、プログラマーに作ってもらったほかのPHPファイルが、そこに格納されているので、あわせたほうがいいかなぁ、と思って、そうしたのですが、別にCGIファイルでもないし、いいかぁ、ってことでHTMLディレクトリに移動し、一度DBを作り直してもらって、再度インストール。おぉ。なんとかログインできた。これで、一安心かな、と思いながら書き込みテストをしてみると、今度は、記事を投稿した時に、日本語が消えてしまう、という問題に遭遇。なんじゃあ?ひとまず、英文だけで記述をして投稿すると、無事に投稿ができました。あれ?ってことで、ソースを確認すると、charsetはUTFになっているくせに、ブラウザのエンコードがシフトJISになっている。。。こりゃ、PHPのエンコーディングの問題だなってことでM君に打診。すると、プログラマーが作ったPHPがShift-jisで書かれているから、それにあわせた、とのこと。なにぃ??そうなると、そこ(php.ini)を変えてしまうと、今動いている申し込みのシステムとかに問題が出てしまいそうです。。う?ん、どうにかブログのディレクトリだけPHPのエンコーディングをUTF-8にできないものだろうか、と調べてみると、どうやら..htaccessでできるらしい。。。早速記述してアップ。すると、今度は500サーバーエラー。う・・・?その後も、数種類の記述を試すも、ことごとくサーバーエラー。別のサーバーにアップしてみると、動くので、構文がおかしいわけじゃなさそうです。こうなると、切り分け的にはサーバーがあやしい。どうも.htaccessが許可されていないような気がする。M君に聞くと、「いや、前回の打ち合わせの段階で.htaccessは使うって話だったんで、Allにしてますよ・・・」と。そのまま、平行線になってしまい、2週間ほどその状態でほったらかしていました。そこへ、今日のできごと。M君が「Allにしてますよ」ってのは3箇所あったうちのどのAllowOverrideなんだろう?どうも、いろいろ試した結果、全ての.htaccessがサーバーエラーを出すわけではなくて、BASIC認証だけはできるんですよ。そこから僕が導き出した結論は、HTMLディレクトリだけはAllowOverride AuthConfig になってるんじゃなかろうか?ということ。M君に、君の仕事を疑うわけではないけれど、念のため、もう一度確認してみてくれないか、と打診。少しして、「すみませんでしたーーー!!!」との返事。「t-hosoさんのおっしゃるとおりでした」とのことでした。光明が見えた!!!早速設定を変えてもらい、.htaccessを設置。ブログにログイン⇒書き込みできたーーーー!!!な、長かった。。。サーバーと一緒に面倒みないといけなくなると、こんなにも面倒なものなのか、、、ブログ設置。何はともあれ、最後までめげずに一緒にがんばってくれたM君に感謝。そして、Y君による.htaccessの設置も無事に終わりました。さらには、僕が抱えていた、PHPの修正も一通り終わりました。今日は、全ての仕事が順調に流れて、うまく歯車がかみ合いました。心残りなく、家路につけるのは、どれくらいぶりでしょう。明日は、もともと遅番だったので、しっかり遅番で出勤しようと思います。