- PR -

【ASP.NET】サーバ名でアクセスするとフォーム認証が出来ない

1
投稿者投稿内容
最大40
常連さん
会議室デビュー日: 2004/02/06
投稿数: 41
投稿日時: 2006-02-17 15:39
VS2003にてASP.NETアプリケーションを作成しています。
認証をフォーム認証で行っているのですが、Windows2003Server上で動作するアプリケーションにサーバ名でアクセスした場合、正常に認証がされないという現象に悩まされています。。。

Windows2000上で動作させた場合はサーバ名・IPアドレスどちらでアクセスしても問題ありません。
しかし、2003上で動作させた場合「http://10.x.x.x/〜」とIPアドレスで接続すると問題ないのですが、「http://Machine_name/〜」とアクセスすると、RedirectFromLoginPageやSetAuthCookieといったメソッドが正常に動作しません。

通信内容をキャプチャしてみると、マシン名でアクセスした場合、
"ASP.NET_SessionId"というクッキーがやり取りできないようです。

2000では大丈夫で2003ではダメということは何か設定があるのだと思うのですが、
どこにもそういった設定がみあたりません。
現在はテスト中なのでIPアドレスで問題ないのですが、
将来的にドメイン名で公開したときに接続できないのでは?と心配しています。

まさかASP.NETやIISの仕様ではないと思うのですが、解決策等ありましたら教えてください

web.configの設定は
コード:
        <authentication mode="Forms"> 
            <forms
            loginUrl = "login.aspx"
            name = ".ASPXFORMSAUTH"/>
        </authentication>


認証は
コード:
 FormsAuthentication.RedirectFromLoginPage(txtid.Text,true);


で行っています
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-02-17 15:56
実際のサーバ名に "_" 入っていますか?
最大40
常連さん
会議室デビュー日: 2004/02/06
投稿数: 41
投稿日時: 2006-02-17 16:26
>かるあ さん

実際のマシン名にも"_"が入っています。
ひょっとして"_"が入っているとだめとか・・・
一郎
ぬし
会議室デビュー日: 2002/10/11
投稿数: 1081
投稿日時: 2006-02-17 16:28
機械翻訳ですが。

http://support.microsoft.com/default.aspx?scid=kb%3Bja%3B275033

最大40
常連さん
会議室デビュー日: 2004/02/06
投稿数: 41
投稿日時: 2006-02-17 18:30
>一郎 さん

情報ありがとうございます。
サーバ名を変更したところ、問題なくアクセスできるようになりました。

丸一日悩んでいたんですが、解決できて助かりました。

かるあ さん・一郎 さん
本当ににありがとうございますm( _ _ )m
1

スキルアップ/キャリアアップ(JOB@IT)