启动时ASP.Net运行错误页面为Sartup Page

时间:2012-12-18 04:30:09

标签: c# asp.net webforms

我在localhost上的多语言网站有一个简单的文件夹结构

Default.aspx
images
css
js
en/Default.aspx
en/ContactUs.aspx
....
ar/Default.aspx
ar/xxxxx.aspx

我面临的问题对我来说很奇怪。我有一个简单的代码来检查用户设置的浏览器语言,因此我将用户重定向到英语或阿拉伯语版本的网站。

无论我使用什么代码,它总是将我重定向到英文版的网站并执行en/Default.aspx页面

即使对Default.aspx页面中的所有代码进行评论,它仍会将其重定向到en/Default.aspx页面。虽然它不应该做任何事情。

我已将Default.aspx设置为设为默认页面,但它没有任何区别。我删除了具有路由代码的global.asa,我还删除了本地主机上与该网站相关的所有编译器代码,但它仍然在做同样的事情。

我检查过web.config文件没有任何问题。

即使删除了Default.aspx页面,它也会将我重定向到en/Default.aspx我对此问题感到沮丧。

我不确定是什么问题。我没有结果重新启动系统。

我正在使用visual studio 2010 for asp.net web form project。

http://localhost:49831/AlShindagah/

总是带我到以下网址

http://localhost:49831/AlShindagah/en/Default.aspx

我删除它之前的Default.aspx代码

public partial class DefaultMain : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

        //switch (Session["lang"].ToString().ToLower())
        //{
        //    case "en-us":
        //        Response.RedirectPermanent("~/en/Default.aspx");
        //        break;
        //    case "ar-ae":
        //        Response.RedirectPermanent("~/ar/Default.aspx");
        //        break;
        //    default:
        //        Response.RedirectPermanent("~/en/Default.aspx");
        //        break;
        //}

    }

    //// Localization and Globalization code
    //protected override void InitializeCulture()
    //{
    //    String lang = Request["Language"];

    //    Session["lang"] = Helper.DetectLanguage(lang);
    //    //Set Direction of page LTR/RTL
    //    if (Session["lang"] == "ar-AE")
    //    {
    //        Session["PageDIR"] = "rtl";
    //    }
    //    else
    //    {
    //        Session["PageDIR"] = "ltr";
    //    }

    //    base.InitializeCulture();
    //}
}

1 个答案:

答案 0 :(得分:1)

您之前使用的是Response.RedirectPermanent("~/en/Default.aspx");。一个符合标准的浏览器会记住这一点并始终将您重定向到那里。

清除浏览器缓存,然后重试:)

作为旁注,请使用Redirect代替RedirectPermanent。如果我从浏览器访问www.mysite.com并访问www.mysite.com RedirectPermanent,请访问www.myothersite.com,一个符合标准的浏览器会记住这一点以及将来对www.mysite的所有请求。 com,它会打电话给www.myothersite.com。