首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Asp.net核心cloudflare使用非突出的-ajax阻止混合内容

Asp.net核心cloudflare使用非突出的-ajax阻止混合内容
EN

Stack Overflow用户
提问于 2017-08-09 14:31:44
回答 1查看 1K关注 0票数 0

我最近建立了一个使用cloudflare免费ssl的网站。当使用ajax调用分页时,我会得到一个混合的内容错误,因为它仍然是通过http!我尝试在这里使用https重定向的说明:https://learn.microsoft.com/en-us/aspnet/core/security/enforcing-ssl,但这只是在一个循环中结束,导致了太多的重定向错误。

这是与混合内容有关的具体错误:

混合内容:在'https://www.andysmobilearchery.co.uk/events/‘处的页面是通过HTTPS加载的,但是请求一个不安全的XMLHttpRequest端点'=1502287619453’。此请求已被阻止;内容必须通过HTTPS送达。

对此有修复吗,还是我必须删除ajax函数?

任何帮助都是非常感谢的!

代码语言:javascript
复制
@if (Model.Pager.EndPage > 1)
{
    <ul class="pagination">
        @if (Model.Pager.CurrentPage > 1)
        {
            <li>
                <a asp-controller="Events" asp-action="_Index" data-ajax="true" data-ajax-mode="replace" data-ajax-update="#paged-content" asp-route-page="1" data-ajax-method="GET" asp-route-dfrom="@ViewBag.dfrom" asp-route-dto="@ViewBag.dto" asp-route-search="@ViewBag.search">First</a>
            </li>
                <li>
                    <a asp-controller="Events" asp-action="_Index" data-ajax="true" data-ajax-mode="replace" data-ajax-update="#paged-content" data-ajax-method="GET" asp-route-page="@(Model.Pager.CurrentPage - 1)" asp-route-dfrom="@ViewBag.dfrom" asp-route-dto="@ViewBag.dto" asp-route-search="@ViewBag.search">Previous</a>
                </li>
        }

        @for (var page = Model.Pager.StartPage; page <= Model.Pager.EndPage; page++)
        {
            <li class="@(page == Model.Pager.CurrentPage ? "active" : "")">
                <a asp-controller="Events"asp-action="_Index" data-ajax="true" data-ajax-mode="replace" data-ajax-update="#paged-content" data-ajax-method="GET" asp-route-page="@page" asp-route-dfrom="@ViewBag.dfrom" asp-route-dto="@ViewBag.dto" asp-route-search="@ViewBag.search">@page</a>
            </li>}

        @if (Model.Pager.CurrentPage < Model.Pager.TotalPages)
        {
            <li>
                <a asp-controller="Events" asp-action="_Index" data-ajax="true" data-ajax-mode="replace" data-ajax-update="#paged-content" data-ajax-method="GET" asp-route-page="@(Model.Pager.CurrentPage + 1)" asp-route-dfrom="@ViewBag.dfrom" asp-route-dto="@ViewBag.dto" asp-route-search="@ViewBag.search">Next</a>
            </li>
                <li>
                    <a asp-controller="Events" asp-action="_Index" data-ajax="true" data-ajax-mode="replace" data-ajax-update="#paged-content" data-ajax-method="GET" asp-route-page="@(Model.Pager.TotalPages)" asp-route-dfrom="@ViewBag.dfrom" asp-route-dto="@ViewBag.dto" asp-route-search="@ViewBag.search">Last</a>
                </li>
        }
    </ul>
}

我现在注意到,其他我已经实现了这个工作的站点(另外3个!),我使用的是asp.net样板,它为urls添加了一个尾斜杠,如果我禁用了这个事件页面,但是我的评论页面会停止.我很困惑

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-09 19:34:26

所以我找到了答案,有点。

在我的应用程序中,我有一个路由选项来添加尾随斜杠:

代码语言:javascript
复制
    .AddRouting(
        options =>
        {
                // Improve SEO by stopping duplicate URL's due to case differences or trailing slashes.
                // See http://googlewebmastercentral.blogspot.co.uk/2010/04/to-slash-or-not-to-slash.html
                // All generated URL's should append a trailing slash.
                options.AppendTrailingSlash = true;
                // All generated URL's should be lower-case.
                options.LowercaseUrls = true;
        })

我发现禁用这个功能是有效的,但是我不满意,因为这个问题不会出现在我的其他网站上。最后,我从一个修复了这个问题的工作站点中复制了startup.cs,唯一的不同之处是,这个坏站点使用一个部分类来启动,而在构成启动的其余部分的文件中,唯一的区别是cors方法,我不需要cors,所以我不知道它为什么会出现,仍然不应该破坏它。因为我让它起作用了,它还得保持一段时间的神秘。我要做的是在稍后的时间一点一点地重新设计这个应用程序;如果我还记得的话,我会在这里更新任何发现。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45593615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档