正确地用另一个字符串替换字符串

时间:2012-01-12 09:41:42

标签: c# asp.net

我正在使用c#编码的网站并使用ssl证书" secure.mydomain.com 要从http切换到https,它使用以下代码

       if (useSsl)
        {
            if (!String.IsNullOrEmpty(ConfigurationManager.AppSettings["SharedSSL"]))
            {
                //shared SSL
                result = ConfigurationManager.AppSettings["SharedSSL"];
            }
            else
            {
                //SSL
               **result = result.Replace("http:/", "https://");**
            }

这将从" http://mydoman.com"切换;到" https://mydomain.com" ;,但我需要" https://secure.mydomin.com"。如果我将代码更改为 result = result.Replace(" http:/"," https:// secure"); 它会将我更改为错误页面,因为它试图转到" https:// secure"。

我一直在寻找解决方案并尝试了3个星期但没有工作。有关如何纠正此问题的任何建议吗?

2 个答案:

答案 0 :(得分:3)

您错过了http

上的额外正斜杠
result.Replace("http://", "https://secure.");

这对你有用

答案 1 :(得分:0)

正如soniic所说,你错过了/

这意味着你的字符串看起来像

https://secure/.mydomain.com

这就是为什么你被重定向到https://secure而不是https://secure.mydomain.com