有一个网站显示图片,但你无法下载它。它使用背景技术并强制javascript以避免保存,当您在代码中找到文件图像URL时,您无法直接访问它。我想知道如何重现这个以及如何获取文件。我查看了缓存,但无法找到它。在chrome dev工具的资源中,我可以看到图像全尺寸,但不能在没有打印屏幕的情况下保存它。
它必须与htaccess有关,我想但不确定。
编辑: 块应该类似于这个我将尝试设置这样的一点测试: (htaccess) How to prevent a file from DIRECT URL ACCESS?
如果jpeg显示在http://localhost/test/
但http://localhost/test/sample.jpg
引发错误,我该如何通过cURL获取该文件?
答案 0 :(得分:1)
一个好的起点是尝试curl
或wget
网址(您可以在Chrome开发工具中找到该网址)。
如果结果不成功,则在此处发布结果也会有所帮助。
如果它实际上在请求级别被拒绝(这是Apache在使用.htaccess文件时将要执行的操作),则可能存在允许应用程序请求它的标头或cookie。 / p>
如果图像没有使用javascript在页面上绘制,您也可以简单地关闭javascript,如果应用程序阻止在客户端上访问,则可以右键单击并正常保存图像。 / p>
查看标题&请求图片时发送的Cookie,并使用curl
中的Cookie或GraphicalHTTPClient之类的应用。
编辑:这是chrome dev工具的图片,其中显示了图片的标题。您可以在开发工具的“网络”面板中找到它。请注意,图像加载时必须打开工具。
一方面注意:apache使用.htaccess
文件,它只是一个服务器,并不一定与php有任何关系。这个应用程序不太可能拒绝他们的PHP代码(如果应用程序甚至用php编写),因为通过php提供服务图像非常罕见。