Windows Server 2003 (IIS6) On Xoops
Windows Server 2003 R2上でXoopsサイの構築を行った時のメモ
phpとmysqlは2007/7の時点でWindowsバイナリの最新版を利用しました。
php 5.2.3
MySql 5.0.45
-
IISをインストールする。
サーバーの役割管理からインストールします。
-
phpのインストールと設定
-
phpはZIPアーカイブ版をHPよりダウンロードします。ダウンロード先はこちら
ダウンロードしたZIPファイルを展開し、展開されたフォルダをphpにリネームしC:\へコピーします。
++phpフォルダのNTFSアクセス権の設定を変更します。
ユーザーEveryoneに読み取りと実行、フォルダの内容の一覧表示、読み取りアクセス権を許可します。
++phpフォルダ内のphp5ts.dllとphp.ini-distファイルをc:\windowsフォルダにコピーします。
libmysld.dllファイルもC:\windows\system32へコピーします。
コピーしたphp.ini-distファイルをphp.iniに変更します。
++メモ帳などでphp.iniファイルを編集します。編集箇所は下記になります。
include_path ".;c:\php\includes;c:\php\PEAR"
doc_root = "c:\Inetpub\wwwroot" ← IISのドキュメントルートがデフォルトの場合
extension_dir = "c:\php\ext"
extension=php_gd2.dll ← 画像関係のDLL。必須ではない
extension=php_mbstring.dll
extension=php_mysql.dll
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = Off
mbstring.detect_order = auto
mbstring.substitute_character = none;
mbstring.func_overload = 0
-
IIS側でphpファイルが動作するように設定します。
管理ツール→IISマネージャを起動します
webサービスの拡張をクリックし、新しいwebサービス拡張を追加をクリックします。
拡張名にPHPを記入し、必要なファイルで追加をクリックします。
ファイルのパスでc:\php\php5isapi.dllを選択します。
拡張の状態を許可済みに設定するにチェックをします。
次にphpを動作させるサイトのプロパティを開きます。(デフォルトでは規定のWebサイト)
ホームディレクトリタブの構成をクリックします。
アプリケーションの拡張子で追加をクリックします
実行可能ファイルにc:\php\php5isapi.dllを入力し、拡張子は.phpを入力しOKをクリックします。
-
全ての設定変更が終了したら、OSの再起動行います。(WWWサービスの再起動でも可)
-
phpの動作テスト
メモ帳等で、下記内容を記述したファイルを作成します。
<? php
phpinfo();
?>
phpinfo.phpなど適宜名前をつけて、IISのドキュメントルートフォルダに保存します。
IEなどのブラウザでinfo.phpファイルにアクセスし、phpの情報画面が表示されることを確認します。
mbstringとMySqlの項目があることを確認します。
-
当方の環境でのトラブル1
確認用ファイルinfo.phpのNTFSアクセス権を変更しないと,401 ページを表示する権限がありませんが表示されました。
インターネットゲストアカウントに読み取り権限を与えているのに権限がないと表示されます。
そこで一度フルコントロール権限を与え、再度読み取りに変更するとで回避できました。
-
トラブル2
当方のイントラ環境でホスト名にアンダーバー_を利用しておりました。
しかしxoops側の仕様なのかバグなのか、アンダーバーを含むFQDN名を使用すると、管理者画面にアクセスできませんでした。
アクセス権がないと言ってアクセスできない。
アンダーバーのホスト名を利用するのはやめましょう
-
mysqlのセットアップ
-
インストーラ版をダウンロードし、セットアップを行います。ダウンロード先はこちら
インストーラは全て次へをクリックして進めます。
-
セットアップ終了後コンフィグレーションウィザードが自動実行されます。
基本的にデフォルトで進めますが、下記の設定を行います
default charactor setで日本語を選択
Include Bin Directory in Wndows PATHにチェック
Modify Security Settingsでmysqlのrootアカウントのパスワードを入力
上で入力するパスワードはxoopsの設定時に必要になります。
-
xoopsのインストール
-
ダウンロードしてきたxoopsのファイルをIISの公開用フォルダにコピーします。
フォルダやファイルそれぞれにアクセス権を設定しますが、当方では面倒なので、全てのファイルとディレクトリにインターネットゲストアカウントに
読み取り、書き込みのアクセスを許可する設定を行っています。
(cache,ploads,templates_cフォルダと、mainfaile.phpに書き込み許可をすればよいみたいです)
特にインターネット上に公開するサーバの場合、セキュリティ上の問題になる場合がありますので、アクセス権は慎重に設定して下さい。
-
ブラウザから公開するアドレスにアクセスし、xoopsの初期設定を進めます。
データベースは事前に作成する必要はありません。xoopsのインストール中に自動的に作成してくれます。
データベースへアクセスするアカウントの設定は、mysql側で作成する必要があります。
アカウントroot、パスワードmysqlインストール時入力したパスワードでも可ですが、xoops用データベースを操作できるアカウントを限定する方がよいかもしれません。
アカウント作成はmysqlのヘルプを参照してください。
IISの仮想ディレクトリ上でのPHP動作について
IIS上で仮想ディレクトリの設定を行い、そのディレクトリでPHPを動かそうとしましたがエラーが発生します。
具体的にはブラウザでURLにアクセスすると404エラーを返されます。
もちろんPHP以外の静的コンテンツには正常にアクセスできます。
原因は仮想ディレクトリで指定したディレクトリ名と、実フォルダ名が違っていた為です。
例:
仮想ディレクトリの名前:inet
実フォルダ名:d:\Inetpub\wwwroot\xoops
どうもPHP側のバグなのか、仕様なのか・・・・
仮想ディレクトリの設定を行う場合は、仮想ディレクトリ名と実フォルダ名を同じにしてみてください。
最終更新:2010年09月20日 22:39