タイトルが長くなるので、ちょっと略語で書いちゃいましたが、Windows Web Server 2008のサーバ上で、WordPressを構築している場合、メディアライブラリを使って画像をアップロードした際に、サムネイルが表示されない場合があります。
私も、これを解決するのに数週間ほど時間を費やしたので、チェックする項目を列挙し、備忘録として残しておきます。
環境: Windows Web Server 2008 + PHP 5.3.1 + WordPress2.9.2
不具合時の状況:
- WordPress/wp-content/uploadsが保存先で、書き込み権限が与えてある
- PHPは、FastCGIにて動作している
- GDライブラリは有効になっている
- WordPressのメディアライブラリにて新規追加すると、アップロード自体は出来ている
- アップロードした画像は、ウェブアクセスすると表示されない
- Windows Web Server 2008の認証は、匿名が有効になっている
- Windows Web Server 2008の匿名アクセスは、IUSRである
原因究明してみると、メディアライブラリ新規追加でアップロードした画像(uploadsに保存された)は、IIS_USRSでのアクセスが読み書きの権限がない状態となるのが原因のようです。
アクセス権限が原因であるのが判明したわけなので、セキュリティオプションで、uploadsフォルダをIUSR、IIS_USRSともフルアクセスに設定する。 だが、全く症状が変わらず。
Windows Serverでは、アクセス権限の継承やらが、かなり複雑になってるので、Linuxで慣れているせいもあって、かなり難解です。
このアクセス権絡みに、かなり時間を費やしたわけですが、実際は、違うところに原因があったようです。
まず、php.iniにupload_tmp_dirを設定する箇所があるのですが、アホな事に、重複して同じ記述を書いてました。 orz
それが原因で、いくら編集しても別の設定が有効になっていたわけです。
そんな分けで、タイトルのように、Windows Web Server 2008上のWordPressでサムネイルが表示されない時にチェックする項目です。
- php.iniは、PHPフォルダ内かC:\WINODWS下のどちらかに置いておく
- php.iniにGDライブラリ読み込み表記が書いてあるか確認
- php.iniにupload_tmp_dir = “C:\TEMP/”のようなテンポラリフォルダを指定する
- このフォルダをIUSRに読み書き・変更の権限を与える
- WordPress/wp-content/uploadsフォルダに、IUSR、IIS_USRSのアクセス権限をフルアクセスに指定しておく
- アクセス権限を与える場合は、親を継承する場合があるので、継承なしにしておく
- php.iniを編集した場合は、IISを再起動する
- WordPress/wp-config.phpに作業用ディレクトリ指定を表記しておく
define (‘WP_TEMP_DIR’, ‘C:\TEMP/’);
確認する項目としては、これ位でしょうかね。
最後は、phpinfo();で、じっくり確認すると良いかもしれません。
今回、ネット上で、この辺りの問題に関して検索したのですが、なかなか見つからないので、Windows Web Server 2008上でWordPressを利用してる方は、あまり多くないようですね。
最近、Javascriptを少し弄る機会が増えてきたので、以前もAptanaをPCへ入れていたのですが、かなり古かったので、最初から入れ直し。
Windows USB版
Windows版は、USBで持ち歩くため、Portableとしてインストールする事にした。
- Aptanaのダウンロードページから、zip版とインストーラ版をダウンロード
- zip版を解凍し、USBへコピー(直接USBへ解凍してもOK)
- インストーラ版を解凍(7zip)し、その中に入っている、jreディレクトリを、zip版を解凍したAptanaディレクトリへコピー
もし、インストーラ版を解凍出来ない場合には、一度PCへインストールし、インストール先にjreディレクトリがあるので、それをコピー - USB内のAptanaを起動
Ubuntu(Linux)版
- Aptanaのダウンロードページから、zip版をダウンロード
- 適当な場所へ解凍(/usr/local/bin/とか)
- Linuxでスペースが入っているディレクトリは好きではないので、ディレクトリ名変更
# mv “Aptana Studio 2.0″ AptanaStudio - スタートアップファイルを作成 (Aptana.shなど適当な名前で/usr/local/bin/へ)
#!/bin/sh export GDK_NATIVE_WINDOWS=true; exec /usr/local/bin/AptanaStudio/AptanaStudio;
- 実行属性を付加
# chmod 755 /usr/local/bin/AptanaStudio/Aptana.sh - Aptana.shで起動
以上
今週、仕事で、WindowsとApacheとWordPressを格闘してたわけですが、メインサーバのLinuxのApacheから、リバースプロキシーでWindows Web Server(WWS)上のWordPressを読み込んで運用と言う方法をとってます。
ところが、このバックエンドで動かしているWWS上のWordPressを読み込む時の反応が、ものすごく悪い症状が起きてたので、効き目があるか眉唾ものですが、下記の対策をとってみた。
- WordPressのプラグイン「Disable Canonical URL Redirection」というプラグインを導入し、カノニカルURL機能を無効にしてみた。
- Apache のProxyPassReverseを記述している欄に下記2行を追加
SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1
今のところ、反応が悪いわけではないが、まだハッキリと原因がわかったわけではないので、ちょっと様子見です。
こんな画像ってどうやって作るんだろう?と思ってたら、3D Image Commanderと言うソフトで作るみたいですね。

Windows版の他に、Mac OSX、Linux版もあるようで、今後試してみようかな。
あるクライアント用に2台購入した Aspire Revo ASR3610-A44が届きました。
- コンパクト
- 省電力
- 光デジタル音声
- ギガビットLAN
- eSATA
- HDMI
- WiFi Draft-n対応
- ワイヤレスキーボード&マウス
- RAM:2GB HDD:160GB
- Windows7 Home
これだけの構成で、約4万円で買えるんですから、安いですよね。
今時、マウスパッドが付属されてた。(^^;
エプソンのEndeavorと比較すると、一回り大き目のサイズですが、十分な省スペースです。
上部に一つUSBがある。
サイドには、4つのUSBポート、LAN、HDMI、VGA、電源コネクタがあります。
さらに、もう片方のサイドには、eSATA、音声ジャック、光デジタル出力、メモリカードスロットがある。
RDPやVNCのクライアントPCとして使用するだけのものなので、これで十分過ぎです。











