我最近设置了XAMPP。设置很简单,但是我似乎不知道正确的调整方法可以使其与外部网络世界对话。
无论我如何尝试读取外部URL,它都会告诉我在哪里下车。
(在PHP中)我尝试了简单的file_get_contents路由。当失败时,有人指出我要卷曲。我在php.ini中启用了该功能,但也失败了。
我得到了非常无助的“无法打开文件”
Fatal error: Unable to open "https://earth.esa.int/documents/10174/1514862/Swarm_Level-2_TEC_Product_Description" in C:\xampp\htdocs\includes\PdfToText.phpclass:1665 Stack trace: #0 #2 {main} thrown in C:\xampp\htdocs\includes\PdfToText.phpclass on line 1665
我知道这似乎是类PdfToText的错误(上面),但这只是显示错误的一种方式。从引号之间获取文件,尝试加载它,这很好。无论尝试什么,它都不想打开外界的文件。
我认为这是端口/代理/某物,但是我整天都在Google搜索Google Stackoverflow,但在任何地方都看不到相同的问题。
答案 0 :(得分:0)
快速修复:
找到您的php.ini文件:
php -i | grep "Loaded Configuration File"
寻找 allow_url_fopen 并将其设置为“开”
allow_url_fopen = On
说明:
发生此错误的原因是,当您使用诸如file_get_contents或fopen之类的函数时,您正在处理文件指针,allow_url_fopen将允许您执行的操作是,解析URL,创建tcp连接并创建指向该tcp连接的网络文件指针,将由php处理,因为它是文件。
出于安全原因,在某些安装中禁用了此设置。
检查文档