我正在尝试阅读pdf并将第一页保存为图像。此方法适用于http,但它不适用于https。我最近在这里发布了另一个相关问题:
Reading pdfs with RMagick from https gives a not authorized error
我从policy.xml中删除了https行,这让我超过了未经授权的错误。但是,新的错误特定于https:
require 'RMagick'
url = "http://www.ke.tu-darmstadt.de/publications/reports/tud-ke-2008-07.pdf"
image = Magick::Image.read(url + "[0]")
=> [http://www.ke.tu-darmstadt.de/publications/reports/tud-ke-2008-07.pdf[0]=>tud-ke-2008-07.pdf PDF 595x842 595x842+0+0 DirectClass 16-bit 27kb]
url = "https://www.cs.purdue.edu/homes/dgleich/publications/Gleich%202003%20-%20Machine%20Learning%20in%20Computer%20Chess.pdf"
image = Magick::Image.read(url + "[0]")
Magick::ImageMagickError: unable to open file `/tmp/magick-MtiGRdUJ': No such file or directory @ error/constitute.c/ReadImage/583
好像它正在寻找/ tmp文件夹中不存在或不再存在的文件。服务器上的任何位置都没有该名称的文件。 http url确实在/ tmp文件夹中创建了一个文件,所以看起来它可能是一个bug。