百見は、一聞にしかず

見てもわからない事は、とりあえず聞いてみよう。

拡張子の大文字小文字について

この間、Wordpressプラグインを作成して、レンタルサーバーにインストールして動作を確認していたところ、色々と不具合が出てしまっていたのですが、その中の一つでCSVファイルを読み込んでリストボックスにセットするところが、何もセットされず、困ってしまったことがありました。
開発していた環境はwindows7でテスト環境はwindows server 2008R2でレンタルサーバーはCentOS6でした。
いつものようにグーグル先生に聞いてみました。ですが、今日はいつものように答えてくれませんでした。聞き方(検索のキーワード)が悪かったのかもしれませんが、いつも聞いてばかりではいけませんよ。と言われたかのようでした。(勝手に自分のなかで解釈してます)

結論から言いますと、原因は、拡張子の大文字と小文字を区別していなかったことです。
windowsでは拡張子は.csvでも.CSVでも.Csvでも同じですが、Linuxでは区別しますね。なぜかというと分かりませんが、そういう仕様ですね。。。

ということで早速ソースを修正し、無事にCSVファイルを読み込んでくれました。
この原因に気づいたのはfirefoxの開発ツール(F12キーを押して出てくるウインドウですね)を眺めていたところステータスが301という部分を見つけました。

301って何でしょうとグーグル先生に尋ねたところ、「301 Moved Permanently 恒久的に移動した。」という文を見つけました。

余計にわからなくなりましたが、移動した→無くなった→見つからないと自分の中で変換し、ファイルの存在を確認しました。

ありました。

うーん?もしかして、まさか、という思いから、拡張子の部分を大文字に揃えてみましたところ、解決しました。


※拡張子が小文字の時の開発ツールの画面

f:id:lbblue:20170215180354p:plain


※拡張子を大文字にした時の開発ツールの画面

f:id:lbblue:20170215180412p:plain

 

テスト環境と本番環境は同じにしないと意味がないですね。当たり前ですよね。。。
あと、ほんの少しで良いので、エラー内容にヒントを載せてくれたりすると助かりますね。。。数をこなして経験を積んでエラーを紐解く力を身につけなければとしみじみ思いました。

頑張らねば!