这是来自mSO的交叉发布,但影响了整个网络。 1.已在整个网络范围内启用,2.3.将很快在我们选择的mSE和另一个SE社区(主站点+元)上启用,以进行第一轮站点范围的HTTPS测试。阅读完整的总体规划!

按照@patrick的要求,让我们杀死死掉的图像。我们没有按需审阅队列,并且编辑帖子列表对于小批量工作还可以,1,让我们来看看crowdcrafting.org/pybossa。所以,事不宜迟:

我需要一个bosse2


2017-03-07(meta。)security.SE处理,(仅)添加了28个任务到^^
2017-03-08服务器故障,超级用户及其元数据已处理,共1069个任务
2017-03-09已处理25个主要SE站点,共计7911个(有人报警)任务
2017 -03-09已删除的mSE帖子已从众包队列中删除
2017-03-10其余公共SE网站已完成,队列中有6225个任务
2017-03-11修复了askubuntu上的2个URL刚刚获得https支持但受影响的〜.k帖子的.com
.SE网站的子metas将在meta移动后进行处理


在接下来的6-8周内,我们将推出一些更改以解决第一次加载页面时混合内容的问题,即:


Imgur URL从HTTP转换为HTTPS。这将是HTML烘焙更改,因此不会影响Markdown。它已经发布,所有旧帖子都被重新烘焙。
防止提交包含HTTP图像的帖子。 markdown编辑器将显示一个附加错误,而不是HTTP图像...

...并提供了一个选项,该选项可以显示带有预填充URL的图像上传工具,因此您可以轻松地上传交给Imgur(由于cc-by-sa等原因,我们不能代表您这样做):

启用此功能后,将对通过HTTPS访问的具有HTTP图像的旧帖子进行相应的编辑。这将是实际的降价更改,归因于“ URL Rewriter Bot”;帖子不会被颠簸。 (示例)
使用HTTP图片重新烘焙其余帖子,以使链接到HTTP地址的图片成为链接-无论如何,大多数图片都已失效。这将是HTML烘焙更改,因此不会影响Markdown,但即使在查看旧修订时,它也会删除所有混合内容。


[1] ...让我们拯救任性的资源需求! (试运行)[2] ...根据具体情况,我们也可能将其用于其他用途

评论

您编写MSO和MSE的方法很奇怪:)

@Stijn如果我们要学究,小写-m是更合适的方法。防止元堆栈交换和数学堆栈交换的混淆。

@Stijn,以他的名字命名,他应该将其写为ms0。 :P

@Undo好吧,我们没有其他名称以M开头的网站,否则我们将陷入真正的麻烦。

请精选吗?漂亮吗? 0 :)

删除了没有足够信誉的用户无法查看的问题和答案页面。在这种情况下,这样的人群手艺人应该单击“完成”还是“跳过”?

@FrenzyLi“跳过”会更好,“完成”将它扔出队列,让我在那儿添加一些说明

@ m0sa我一开始甚至都没有考虑过这个问题,因此点击了大约20个案例的“完成”。是否可以还原我的操作?

@FrenzyLi不费吹灰之力,需要两个“完成”的响应才能完成任务

@ m0sa很可能是Frenzy Li和我本可以在同一帖子上单击“完成”,因为同一帖子对我重复了很多次。

跳过时我总是得到相同的

这个众筹网站上似乎有很多无法编辑的帖子,事实证明这些帖子已经迁移到MSU / MSO /任何地方。有很多事情会让我无聊地贡献自己的力量,从编辑按钮中获取其中的四五个绝对是其中之一。

好的,因此我尝试在此处使用exportcraftcraft.org/project/sehttpimagescleanup/tasks/export,但我有点担心输入数据可能并不正确。它开始理智:“ info”:{“ BaseHostAddress”:“ meta.stackexchange.com”,“ PostId”:“ 150”,...但是随后寻找烹饪项目,我发现:“ info”:{“ askubuntu.com“:” cooking.stackexchange.com“,...” 149“:” 1561“

嗯,看起来我导入了不带标题的CSV,并且将第一行的值用作列名...我创建了一个合并的,清理过的CSV文件,但是不幸的是pybossa API没有批量删除端点...因此,相反,我通过强制它支持alt列来使UI再次变得很棒...

可以用HTML重新烘烤来固定样式图像吗?我们有大量与主持人相关的帖子目前无法正常运行。 (我一直在手工修复它们,但这可能不是我最好的时间。;-)

#1 楼

终于有了HTTPS支持的好工作!

我要注意第4点(重点是我的):


用HTTP图像重新烘焙其余的帖子,所以链接到HTTP地址的图像将变为链接-无论如何大多数都会失效。


如果大多数链接仍然失效,为什么不麻烦一次并检查它们是否失效真的死了还是没有。如果是,则将其删除!如果我们能够一次自动执行此操作,为什么我们需要依靠社区来一步一步地解决问题?让我们手动完成工作。如果可以,请贡献!大约有2500条帖子...

评论


我们会检查,注意点3。-具有HTTP图像(可通过HTTPS访问)的旧帖子将进行相应的编辑,4.只是清除了剩下的内容

–m0sa♦
17 Mar 6 '17 at 15:39



但是使用4表示您将非HTTPS图像转换为链接,而不是将其删除。

–帕特里克·霍夫曼(Patrick Hofman)
17 Mar 6 '17 at 15:40

我们不能只删除它们

–m0sa♦
17 Mar 6 '17 at 15:42

哦,可以。为什么不?

–帕特里克·霍夫曼(Patrick Hofman)
17 Mar 6 '17 at 15:42

他们有替代文字或其他描述存在的意思的东西

–m0sa♦
17 Mar 6 '17 at 15:43

然后将其替换为一些有用的文字,替代文字,然后将其放入评论或其他内容中。

–帕特里克·霍夫曼(Patrick Hofman)
17 Mar 6 '17 at 15:44

我们确实将替代文本放在链接文本中

–m0sa♦
17 Mar 6 '17 at 15:49



但是,如果图像死了,为什么还要保留链接?

–帕特里克·霍夫曼(Patrick Hofman)
17 Mar 6 '17 at 15:49

您是否宁愿浏览修订历史而不是在那里查看修订历史?

–m0sa♦
17 Mar 6 '17 at 15:50

如果我们将其删除,则下一个编辑帖子的人员将不会收到仅HTTPS图片警告,这可能会促使他们寻找替换图片

–m0sa♦
17 Mar 6 '17 at 15:54



SO死链接的相关分析(免责声明...这是我的帖子)

–安迪
17 Mar 6 '17 at 16:15



@PatrickHofman会提供这些信息,有人在乎可以找到其他图像或通过Wayback Machine挖掘图像。没有信息,并且(在大多数情况下)(在大多数情况下)在帖子正文中没有有意义的替代文字或足够的描述,我们一无所知。

– Monica Cellio
17年7月7日在3:14

可以通过提供有效的URL来修复失效的图像(如果可以清楚知道应该存在的内容)。

–拉斐尔
17年7月7日在9:14

@ m0sa您可以为我们创建一个仅包含可见帖子的新列表吗?现在,我们在删除帖子上花费了大量时间。我实际上尚未在队列中看到可见的帖子。

–帕特里克·霍夫曼(Patrick Hofman)
17年7月7日在11:01

在删除10个帖子后,我停止运行系统。如果您再做一次,最好将它们排除在外。

–克诺索斯
17年7月7日在11:34

#2 楼

请做到这一点,以便仍然可以使用协议相对URL(即//foo.bar/fum.png)(您写道,您将需要https:)并且不予处理。

评论


某些图片只能通过HTTP提供,其他图片只能通过HTTPS提供。使用协议相对URL可能会破坏事情。

–帕特里克·霍夫曼(Patrick Hofman)
17年7月7日在7:50

@PatrickHofman我认为Martin也是(?)指的是当前其中包含带有协议相对URL的图像的帖子。由于这些大概已经可以通过HTTPS获得,因此如果将嵌入页面也通过HTTPS进行加载,则将这种URI保留下来(如:不要将它们转换为链接)是很有意义的,因为它们将通过HTTPS进行加载。 ,无论如何。

–user2428118
17 Mar 7 '17 at 8:28



我可以同意这一点,尽管对其进行更新也是很少的工作。

–帕特里克·霍夫曼(Patrick Hofman)
17 Mar 7 '17 at 8:31

@ user2428118:的确。同样,不带模式的注释中的stack-extrachange链接也更短,这使我们可以编写更长的注释。 :-)

–马丁·施罗德(MartinSchröder)
17年7月7日在9:20

绝对不再使用相对协议的URL。所有客户端都支持(或应该)https,并且TLS不再慢。相对于协议的URL有用的唯一原因是,无论如何还是通过http加载页面时,都可以加快加载时间。现在,如果可以通过https提供服务,则使用此hack语法显式降低链接到(图像)的资产的安全性是没有用的。另外,它破坏了文件系统方案。 joonas.fi/2016/12/27/stop-using-protocol-relative-urls

– joonas.fi
17 Mar 7 '17 at 16:09

@MartinSchröder您甚至没有阅读答案中的链接吗?现在,所有人都应该鼓励使用SSL,并且不必担心性能问题,现在,这种技术已成为一种反模式。如果您需要的资产在SSL上可用,则始终使用https://资产。

–mbomb007
17 Mar 7 '17 at 16:47



#3 楼

其他人在使用imageshack图片时遇到问题吗?他们不断失败。

评论


对于Imageshack来说,这是相当可观的股票,他们非常喜欢在得到借口后立即删除模糊的旧图像。 (实际上,我们如此坚持imgur托管的原因之一。)

–内森·塔吉(Nathan Tuggy)
17年7月7日在21:13

您是否安装了在此答案中途提到的用户脚本:meta.stackexchange.com/questions/263771/…

–rene
17 Mar 9 '17 at 12:15

确实知道,我已经在几周前查看了所有在MSE上的图像hack图像,并拯救了仍然可用的图像。

–rene
17 Mar 9 '17 at 12:39

#4 楼

我编写了以下代码段(也发布在“帮助我们修复损坏的图像!”中),以按站点过滤并返回Crowdcrafting任务。

它目前最多返回100个任务(API允许的最大任务数)。 。看来,许多网站的受影响帖子远少于此,尽管没有即时方法可以获取更多帖子。可以通过API对结果进行分页(请参阅此处的最后一条注释),所以也许我稍后再看一下。链接)和Crowdcrafting任务页面,以便您可以在任务上点击“完成”,这最终将为您带来更多任务(我认为需要2次“完成”才能从队列中删除帖子)。

只需选择一个站点,单击“获取任务”并通过链接工作...




 function getget(url, callback) {
  var xhr = new XMLHttpRequest();
  xhr.addEventListener('load', function() {
    var response = JSON.parse(xhr.responseText);
    callback(response);
  });
  xhr.open('GET', url);
  xhr.send();
}

function loadSites() {
  var url = 'https://api.stackexchange.com/2.2/sites?pagesize=300&filter=!*L6Sij27hkbD7Gso';
  getget(url, listSites);
}

function listSites(sites) {
  var goBtn = document.getElementById('getTasks');
  var sitesList = document.getElementById('sites');

  for (var i = 0; i < sites.items.length; i++) {
    var siteUrl = sites.items[i].site_url.replace(/^https?\:\/\//i, "");
    var opt = document.createElement('option');
    opt.value = siteUrl;
    opt.textContent = sites.items[i].name;
    sitesList.appendChild(opt);
  }

  goBtn.innerText = 'Get Tasks';
  goBtn.disabled = false;
}

function listTasks(tasks, el) {
  for (var i = 0; i < tasks.length; i++) {
    var task = tasks[i],
      info = task.info,
      taskID = task.id,
      // borked column headers again...
      postID = info['PostId'] || info['12'] || info['149'] || info['73'] || '',
      siteName = info.BaseHostAddress || info['meta.serverfault.com'] || info['askubuntu.com'] || info['sound.stackexchange.com'] || '';

    lastID = taskID;

    var span = document.createElement('span');
    span.innerText = 'Post ' + postID + ':';

    var seViewLink = document.createElement('a');
    seViewLink.href = '//' + siteName + '/questions/' + postID;
    seViewLink.innerText = 'View';

    var seEditLink = document.createElement('a');
    seEditLink.href = '//' + siteName + '/posts/' + postID + '/edit';
    seEditLink.innerText = 'Edit';

    var ccLink = document.createElement('a');
    ccLink.className = 'ccLink';
    ccLink.href = '//crowdcrafting.org/project/sehttpimagescleanup/task/' + taskID;
    ccLink.innerText = 'Crowdcrafting Task ' + taskID;

    var li = document.createElement('li');
    li.appendChild(span);
    li.appendChild(seViewLink);
    li.appendChild(seEditLink);
    li.appendChild(ccLink);
    results.appendChild(li);
  }
}

function init() {
  var goBtn = document.getElementById('getTasks');
  goBtn.addEventListener('click', function() {

    var results = document.getElementById('results');
    results.innerHTML = '';

    var site = document.getElementById('sites').value;
    var searchUrl = '//crowdcrafting.org/api/task?project_id=4667&limit=100&info=BaseHostAddress::' + site;
    getget(searchUrl, listTasks, results);

    // task columns are borked... let's run this a few times
    var searchUrl = '//crowdcrafting.org/api/task?project_id=4667&limit=100&info=meta.serverfault.com::' + site;
    getget(searchUrl, listTasks, results);
    var searchUrl = '//crowdcrafting.org/api/task?project_id=4667&limit=100&info=askubuntu.com::' + site;
    getget(searchUrl, listTasks, results);
    var searchUrl = '//crowdcrafting.org/api/task?project_id=4667&limit=100&info=sound.stackexchange.com::' + site;
    getget(searchUrl, listTasks, results);
  });
  loadSites();
}

// go!
init(); 

 ul { list-style: none; margin: 1em 0; padding: 0; }
li { margin: 0; padding: .5em 0; }
span { display: inline-block; width: 6em; }
a { color: #fff; background-color: #03A7DD; border-radius: 4px; padding: .25em .5em; margin: 0 .5em 0 0; text-decoration: none; }
a.ccLink { background-color: #2B9884; } 

 <label>Site: <select id="sites"></select></label>
<button id="getTasks" disabled>Loading Sites...</button>
<ul id="results"></ul> 





请注意,堆栈代码段中的链接实际上并不起作用...只需在新标签页中打开它们即可(按住Ctrl键并单击,单击中键,右键单击并在“打开新标签页” “或任何其他内容)

#5 楼

如果有人可以编写SEDE查询来查找需要修复的旧帖子(即包含非stack.imgur图像的帖子),那就更好了。

而且,当我们在这里时,如果你们可以消除对cdn.facebook和其他trackersy域中的个人资料图像的依赖,那就太好了。

评论


群众工艺.org / project / sehttpimagescleanup。 (目前还不能真正起作用,卡在已删除的帖子上,但是应该使所有帖子都带有坏图像。)

–影子向导正在接种疫苗
17 Mar 7 '17 at 12:57



确实,如影子巫师所说。在这里查看我的答案以及有关进度的相关问题。

–帕特里克·霍夫曼(Patrick Hofman)
17 Mar 7 '17 at 13:04



我一直在使用这个查询;有帮助吗?

–数学
17 Mar 7 '17 at 13:24

用于枚举任务的api端点是公共的,您可以从那里获取帖子ID

–m0sa♦
17 Mar 10 '17 at 12:18

@Mithrandir似乎不再起作用。

– E.P.
17年3月21日在16:07

#6 楼

我只是决定尝试上述问题中的crowdcrafting.org链接,我收到的第一个任务包含指向https://meta.security.stackexchange.com/questions/227的链接。

显然,这是行不通的(除非我编辑URL或手动为无效证书添加安全例外),因为它仍使用旧的meta.security主机名。我猜应该修复一些问题吗?

此外,事实证明我还是无法处理该任务,因为我在安全性.SE meta上没有编辑权限才22分。但这并不是众筹网站可能知道的。

评论


谢谢,我已经修复了链接,它们现在指向旧的HTTP地址,该地址现在默认情况下重定向到https。

–m0sa♦
17年4月4日在8:13

#7 楼

我发现了一个错误:我得到的第一个任务是http://security.stackexchange.com/questions/17393,它抱怨img标签位于反引号中,因此实际上不是图像。此img标签不需要修复,但最终出现在队列中。

#8 楼

我只想说谢谢您让编辑器使上传变得非常容易。它节省了很多时间...

我希望我的编辑速度不受限制,因为我一直在移动......