Windows Server 2008 でサーバー構築 [Part 6]

Part 5 ぐらいで完結するかな~と思っていたのですが、小分けにしたこともあり、とうとう 6 突入です。

今日は、帰ってきて 3 時間ぐらい寝たので、まだまだいけます。

といっても、あさってからテストなんだがwww

やってない課題がいくつかあるんだがwww

あああああああああ~~~~~~。

っていうのは、いつものことで、問題なし。

今回は、phpMyAdmin に再挑戦します。

 

1. phpMyAdmin を動かすための準備

img74 

やっと、ソフトウェアのセットアップも終わり、実運用環境への構築開始です。

と、phpMyAdmin をダウンロードしてきて、開いてみたのだが・・・。

あれぇ~?

さっき、たまたま下にいたら、妹がやってた「注入、やる気の上昇に効果。」っての、まじまじと見てしまったから、目がぶっ壊れたか。

まあ、あれよりはましか。(ネクタイつかまれるやつ。ってなぜ知ってる。

おれがあのゲームやるならわかる(いや、それでもあり得ない)が、なぜあいつが買わなきゃならんのだ。

っていうのは置いておいて、思いっきり話がそれた。

何度目をこすっても、このままだ。

 

img77 

あ、MIME の設定忘れてた。

Windows Server は、MIME が登録されているもの以外の拡張子のファイルは、アクセスできないようになっている。

IIS マネージャから、MIME の種類を開く。

 

img78 

MIME の設定一覧が並んでいる。

たぶん、ここに ".php" がないからだと推測した。

右クリックで、追加を押す。

 

img79 

いちいち、拡張子を登録するのも面倒なので、一括登録する。

次のように入力することで、拡張子に関係なくアクセスできるようになる。

  • ファイル名の拡張子
    .*
  • MIME の種類
    application/octet-stream

しかし、なぜこんな面倒な設定にしてあるのだろう。

セキュリティの観点からみると、危ないのかもしれないが、これはこれで不便すぎる。

ここら辺が、IIS の批判される点なのか?

というか、Microsoft は何かとこういうところ多いような気がする。

僕は、決して IIS が Apache に比べ、相当見劣りするとは感じられないのだが。

 

2. phpMyAdmin の設定

img338 

次に、phpMyAdmin の設定をします。

設定ファイルを作ります。

"config.sample.inc.php" をコピーして、"config.inc.php" にリネームする。

で、そのファイルを編集する。

 

img341 

編集する部分は

17 行目
$cfg['blowfish_secret'] = 'hogehogehoge';

だけでよい。

ここに、適当にランダムな文字列を入れる。

覚える必要もないので、とにかくランダムなものを指定するといい。

くれぐれも、上のほげほげな感じのままにしないこと。

 

myadm 

アクセスすると、上のようなログイン画面が現れるはず。

あとは、ログインする。

基本的に、MySQL のすべてのデータベースを管理したいのなら root でログインすべき。

というか、この時点では root 以外のユーザーは登録してないはずなので、root でログインする。

パスワードは、前に設定したものを使う。

 

4. 実際に動作させてみるが・・・。

img84 

ログインできれば、管理画面が表示される。

これで、基本的に phpMyAdmin は使えるようになった。

はずなのだが・・・。

 

img86 

いざ、ユーザーを登録しようと思ったら、こんなエラーが。

HTTP エラー 405.0 - Method Not Allowed

ふざけるな。

 

img88 

原因はここ。

ハンドラマッピングの、スクリプトマップの追加で、要求の制限で、動詞の制限設定をしたはず。

そこに致命的な問題があった。

  • 正: GET,POST,HEAD
  • 誤: GET, POST, HEAD

GET, POST のあいだに、このようにスペースを入れると、エラーが出る。

しかし、上の画像、よく見てみてくれ。

例: GET, POST

あの~、これはどういうことでしょう?

Microsoft さんよ~。ゲイツ君よ~。

UI のサンプルミスってちゃだめでしょ。

これなら、まだ "例" なんか書いてくれない方が、間違わないからいいかも。

 

確かに、プログラミングとかで、ソースをきれいに書こうと思うと、たとえば

printf("%d/%d: %s\n", month, day, memo);

printf("%d/%d:%s\n",month,day,memo);

どっちが読みやすいと言われたら、上だろうなぁ。

というか、普通は上のような感じで書くだろうね。

それの慣れで書いてしまったのかもしれないが、自分達の製品の仕様が、スペースを受け付けない仕様なのに、こう書くのはどうかと。

まあ、僕も上記のような慣れで、自然にスペースを入れて、これを後から気付いたんだが。

RTM でもこれ残ってるのかな?

文句言ってやるか。

 

img87 

とりあえず、上記のハンドラマッピングの設定をちゃんとしたら、できるようになりました。

ためしに、Movable Type 用のユーザーを作成してみましたが、無事成功。

Perl の方も、同じようにハンドラマッピングを変えておきましょう。

 

というわけで、Microsoft のいい加減な "例" により・・・。

まあ、エラー内容からして、すぐにどこら辺が原因だか推測できたので、ハンドラマッピングを確認したわけですが。

IIS 7 では、localhost からアクセスすると、エラー内容が詳細に表示されてくれるので便利です。

まあ、それのおかげ?で、たいして時間は使わないで解決できたのですが・・・。

Part7 は、Movable Type を動かすための準備に入ります。

 

余談: wwwroot 以外のフォルダを公開する場合

書くタイミングを見過ごしたというか、書くべきところがなかったというか。

内容が適当すぎたというか・・・。

Part 2 あたりで書いた、wwwroot 以外のフォルダを、Web サイトとして公開する場合の注意点を説明するの忘れてました。

というか、これもっと前で書いておかないとまずいような?

とりあえず、この場で説明しておきます。

 

 img342

Windows というのは、パーミッションというものはありません。

しかし、その概念に近いものはあります。

ユーザーのアクセス権です。

Windows のアクセス権は、Linux などの、パーミッションよりは細かい設定ができるようになってます。

確かに、Windows はパーミッションが関係ないというか、suEXEC とかが関係するのですが。

長くなりますが、Linux で使う Apache には、suEXEC というものがあって、Web サーバーを実行しているユーザー以外のユーザーが、CGI や SSI を実行できたりします。

しかし、IIS はそういうものがなく、すべて "IUSR" というユーザーで実行されます。(基本的には)

なので、IUSR のアクセス権がないフォルダにはアクセスできないのです。

まあ、これにはセキュアなところと、セキュアじゃない部分があるのですが、Linux のパーミッションと同じで、そのフォルダ・ファイルごとにアクセスを制限すれば比較的安全です。

ただ、ひとつ言えることは、IIS で公開するフォルダは、IUSR のアクセス権がないとアクセスできないということです。

なので、 wwwroot 以外のフォルダを、公開フォルダに設定する場合は、必ずセキュリティから IUSR の読み取り権限の許可をしてあげてください。

ただ、場合によっては書き込みのきょがか必要な場合もあります。

特に、ブログシステムや、アップローダーなど、ファイルを書き換えたりする場合に必要なことがよくあります。

基本的には、IUSR は読み込み権限のみに設定して、不具合が発生したらその部分だけ書き込み権限を与えるという設定にすると、セキュアになるかなーと思います。

 

ちなみに、IIS_USER というグループがあり、これに読み込み権限を許可することで、アクセス許可を出すこともできます。

しかし、なぜかこのグループに書き込み許可を出しても、書き込み権限が必要な CGI を動かすことができませんでした。

IUSR に直接、書き込み権限を与えたら動いたのですが・・・。

なんか不思議ですが、バグでしょうかね?

僕が設定か何か間違いましたかね?

 

Windows Server 2008 関連記事

[注意] 途中で、前の Part の修正が加えられている場合があります。

トラックバック(0)

このブログ記事を参照しているブログ一覧: Windows Server 2008 でサーバー構築 [Part 6]

このブログ記事に対するトラックバックURL: http://techno-st.net/mt/mt-tb.cgi/529

コメント(2)

???ドラゴン・キャノン : 2008年2月14日 00:53

この記事の画像が表示されないんですけど僕だけでしょうか?

100万アクセスおめでとうございます。

画像は、こちらの間違いです。
アドレスが間違ってました。
訂正しておきました。

>100万アクセスおめでとうございます
ありがとうございます。
これからも、当ブログをよろしくお願いします。

コメントする

2008年11月

      1
2345678
9101112131415
16171819202122
23242526272829
30      

Random Entries

日替わりらしい。
仕様上ページ別に変わるらしい。
Random な感じらしい。

アーカイブ

  • 月別アーカイブ:
  • カテゴリーアーカイブ:

Ads

このブログ記事について

このページは、technoが2008年2月13日 03:34に書いたブログ記事です。

ひとつ前のブログ記事は「Windows Server 2008 でサーバー構築 [Part 5]」です。

次のブログ記事は「Windows Server 2008 でサーバー構築 [Part 7]」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

 

- 実験中 -

mgfxjey49@techno-st.net

xq58grpua@techno-st.net

m0ss9eatc(at)techno-st.net

y75vdonfa@techno-st.net

edvvb6cx9@techno-st.net

Mail Address