スマホ向け表示

記事一覧

Xmail K4 設定方法 Windows 2003 + IIS6.0 の場合 [文字化け] [e510エラー]対策あり

Windows 2000 Server + IIS 5.0 の場合の設定方法は以下。
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/101.html

人んとこのサーバー管理も大変だ…
しかしなんでIIS6.0の設定だけは書いてあるサイトがないんだろう?
よっぽどめんどくさいんだろうなあ~
しかも、IIS5.1 のほうが安定して稼動するし…
XPで構築したほうがいいのか?今度言ってやるう~

09'4/30現在、0.91bバージョンは使用しないほうがいい。
なぜなら送信と受信ボックスが表示されないからだ。
必然的に旧バージョンを使うハメになる。

続き

前準備:インストールプログラムやプログラムのバージョンなど

・Perl 5.8.8.822以降
・Xmail 2.30d
・XmailCFG 1.25
・K4 0.89b

・ActivePerl 5.8 対応拡張モジュール
 使用する場合は K4\cgi フォルダへ解凍したファイルを上書きする。
・Microsoft .NET Framework 2.0 SP1
※バージョンは最新のものと置き換えて実行してください。
(perl以外)


①インターネットインフォメーションサービス(IIS)マネージャを起動

②IIS 6.0 の [ Web サービス拡張 ] において、
 " 新しい Web サービス拡張を追加 "をクリックし、以下を設定する

・拡張名 : Perl CGI Extension ←名前は何でもよい
・必要なファイル : (perlをインストールした場所 + "%s" %s)
      例) : C:\usr\bin\perl.exe "%s" %s
 ※右にある、追加をクリックして場所を指定したほうが確実。

・拡張の状態を許可済みに設定する ←チェック入れる
ファイル 25-1.gif

③" OK "をクリック。


④インターネットインフォメーションサービス(IIS)マネージャを起動

⑤該当のWEBサイトを右クリック→新規作成→仮想ディレクトリ作成

 [仮想ディレクトリの作成ウィザードの開始]
 " 次へ "をクリック→

 [仮想ディレクトリ エイリアス]
 サイトにアクセスさせるための名前を決める。

 例えば、http://nekoprint.mobi/K4/index.html などで言えば
 [K4] の部分にあたる。

⑥入力後、" 次へ "をクリック。

 [Web サイトのコンテンツのディレクトリ]
⑦実際に " Xmail K4 "のディレクトリを置いた場所を指定する。
  例) c:\Inetpub\wwwroot\k4

⑧入力後、" 次へ "をクリック。

 [ 仮想ディレクトリのアクセス許可 ]
⑨読み取りにチェックして " 次へ "をクリックします。

⑩"完了" をクリックします。


仮想ディレクトリのアクセス許可を確認する。

⑪さっき作成した、仮想ディレクトリ上で右クリックし、
 " アクセス許可 "をクリック。

⑫セキュリティタブに、以下があるか確認する。
 またはアクセス許可を設定する。

 ・Aministrator (ドメイン名\Aministrator)
  フルコントロール
 ・SYSTEM (ドメイン名\SYSTEM)
  フルコントロール
 ・Authenticated Users
  変更・読み取りと実行・フォルダの内容の一覧表示
  読み取り・書き込み
ファイル 25-2.gif

⑬それぞれ確認したら" OK "をクリックして終了させる。

⑭ひとつ階層下にある、" CGI "フォルダ上で右クリックし、
 プロパティをクリック。


[ cgiのプロパティ ] ウィンドウにて

⑮ディレクトリタブでは…

 " ローカル パス " 以下にそれぞれチェックを入れる
  読み取り
  ログ アクセス
  このリソースにインデックスを付ける

 " 実行アクセス許可 "
  { スクリプトおよび実行可能ファイル }を選択。

 " アプリケーション プール "
  { DefaultAppPool }
 ファイル 25-3.gif ←クリックで拡大します

⑯次に右側にある、"構成" をクリック。

⑰[アプリケーションの構成] ウィンドウが開くので、
 "マッピング"タブの下にある、"追加"をクリック。

⑱[アプリケーションの拡張子マッピングの追加/編集]
 ウィンドウが開くので、各項目内に以下を入力する。

 ・実行可能ファイル [perl.exeをインストールした場所 "%s" %s]
  例) C:\usr\bin\perl.exe "%s" %s
 ・拡張子 ".cgi"
 ・動詞 "すべての動詞にチェック"
 ・"スクリプト エンジン"にチェック入れる
 ・"ファイルの存在を確認する"にチェック入れる
 ファイル 25-4.gif ←クリックすると拡大表示します

⑲"OK"を押して終了する。

⑳[アプリケーションの構成]ウィンドウに戻るが"OK"を押して終了する

[cgiのプロパティ] ウィンドウにもどるので、
今度は "ディレクトリ セキュリティ"タブへ。

認証とアクセス制御の右にある、 "編集"をクリック。


[認証方法]ウィンドウにて以下の操作を行う。

・"匿名アクセスを有効にする"のチェックをはずす
・"Windows ドメイン サーバー"で [ダイジェスト認証(※) を使用する]
 にチェックを入れる(Active Directory環境のみ)
・IIS マネージャ ウィンドウが出るが "はい" をクリックする。
・"OK"をクリックして終了させる。

※[統合 Windows 認証]でも、基本認証(パスワードはクリアテキストで
 送信されるのであまり勧めないが)でもよい。


[cgiのプロパティ] ウィンドウにもどるので "OK を押して終了する。


------------------------------

次に、" Xmail " と " XmailCFG "フォルダもアクセス許可をさっき設定した " K4 "フォルダと同じに設定すればよい。


★ 最後に2つのcgiファイルの編集をする。
  これがIIS 6.0(IIS8.0までは確認済み)で運営上のK4最大のヤマかな。
  ここで初めてe510エラーや文字化け対策が出来る。
  これに気付くまで正直ハラたった。

これをしないと特に動的IP環境ではメール送信エラーや
ログインページへアクセスするとe510エラーが多発して安定しない

動作確認済みバージョンは0.89b~0.95の各バージョン。
またダメなバージョンが0.91bだった。
これは送信と受信ボックスが空白になるようだ。


では設定をする。

①[cgi\config.cgi]を"terapad.exe"などのエディタで開く。

②[ $smtphelo = 'localhost' if !$smtphelo; ] の部分を
 検索などして探す。これはバージョンなどで多少違う。
 0.89iなら957か、966行目(perl対応拡張モジュール)
 0.90 or 0.90aなら979か、988行目(perl対応拡張モジュール)
 0.91bなら988か、987行目(perl対応拡張モジュール)
 0.92aなら1002行目と1126行目
 0.93なら1065行目
 0.95なら1215行目
 0.95cなら1193行目

③['localhost'] の部分をxmail環境設定の
 "SMTPハロードメイン (HeloDomain)" で設定したアドレスを入れる

④[ my $smtp = Net::SMTP->new($smtpsvr, Port=>$smtpprt, Hello=>$smtphelo, Timeout=>10); ]
 の部分を検索などして探す。
 これもバージョンなどで多少違う。
 0.89iなら961か、969行目(perl対応拡張モジュール)
 0.90または0.90aなら983か、991行目(perl対応拡張モジュール)
 0.91bなら992か、990行目(perl対応拡張モジュール)
 0.92aなら1006行目と1132行目
 0.93なら1069行目
 0.95なら1357行目
 0.95cなら1197行目 
 
⑤[$smtpsvr] の部分を [localhost] に置き換える。

⑥上書き保存して終了する。


⑦[k4フォルダ\cgi\login.cgi] を terapad.exe などのエディタで開く

⑧[ if (!$smtphelo){$smtphelo = 'localhost';} ] の部分を
 検索などして探す。だいたい40行目あたりにある。
 バージョンなどで多少違う。
 0.89iなら56か、60行目(perl対応拡張モジュール)
 0.90、0.90a、0.91bなら57か、61行目(perl対応拡張モジュール)
 0.92aなら62行目
 0.93なら64行目
 0.95なら78行目
 0.95cなら73行目
  
⑨['localhost'] の部分を
 xmail環境設定の "SMTPハロードメイン (HeloDomain)" で設定した
 アドレスを入れる。

⑩[ my $smtp = Net::SMTP->new($smtpsvr, Port=>$smtpprt, Hello=>$smtphelo, Timeout=>30); ]
 の部分を検索などして探す。
 バージョンなどで多少違う。
 0.89iなら59か、63行目(perl対応拡張モジュール)
 0.90、0.90a、0.91bなら60か、64行目(perl対応拡張モジュール)
 0.92aなら65行目
 0.93なら67行目
 0.95なら81行目 
 0.95cなら76行目 
 
⑪[$smtpsvr] の部分を [localhost] に置き換える。

⑫上書き保存して終了する。


これでブラウザから起動確認する。…いけたかな?
サーバーへのアクセス認証を受けるがコレを通過すると大丈夫。

※いちいち認証のためのユーザー名とパスワードを入力するのが面倒なら以下

 ①IEを起動し、[ツール]-[インターネット オプション]-
  [セキュリティ]タブ-[信頼済みサイト] をクリックし、
  サイトアドレスを登録しておく。※ワイルドカード可

 ②"レベルのカスタマイズ" をクリックする。
  [ユーザー認証]-[ログオン]-[現在のユーザー名とパスワードで自動的にログオンする] を選択する。

 ③"OK"をクリックする。


他、関連項目
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/62.html
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/71.html
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/54.html
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/104.html
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/112.html
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/86.html
https://www.nekoprint.jp/cgi-bin/nekonekodiary/archives/144.html