使用远程服务器在PHP中存储和服务图像不起作用

使用远程服务器在PHP中存储和服务图像不起作用,php,xampp,Php,Xampp,我正在使用程序化PHP创建一个酒店管理项目。我将图像的名称存储在数据库中,并使用ftp将图像上载到另一台服务器(位于htdocs/remote media storage/media/文件夹)。但是,当我尝试将带有域前缀的图像名称添加到src时,它不起作用。但是,当我检查源url时,它是正确的,当我在浏览器中打开它时,它仍然工作。我该如何解决这个问题 这就是我添加到src的方式 这是浏览器中的视图 检查时,页面源显示正确的url 当我打开同一个url时,图像也会显示在浏览器中 这是存储映

我正在使用程序化PHP创建一个酒店管理项目。我将图像的名称存储在数据库中,并使用ftp将图像上载到另一台服务器(位于
htdocs/remote media storage/media/
文件夹)。但是,当我尝试将带有域前缀的图像名称添加到src时,它不起作用。但是,当我检查源url时,它是正确的,当我在浏览器中打开它时,它仍然工作。我该如何解决这个问题

这就是我添加到src的方式

这是浏览器中的视图

检查时,页面源显示正确的url

当我打开同一个url时,图像也会显示在浏览器中

这是存储映像的目录

“alt=”“/>

我做错了什么?

如果您像这里提供的解决方案那样格式化echo语句,会发生什么:如何回显?您仍然会得到一个损坏的图像url吗

由于您在alt中使用了短标记,因此可以尝试以下操作:

<img src="<?='http://thedomain.com/remote-image-storage/media/'.$row["room_image"];?>" />
“/>

我发现这是CORB的一个问题。我的请求被阻止了。我试图将这些覆盖添加到.htaccess文件

# Always set these headers.
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Content-Type"
Header set Access-Control-Allow-Methods "GET"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
 
# Added a rewrite to respond with a 200 SUCCESS on every OPTIONS request.
RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L]

但是我也面临同样的问题。

开发人员控制台怎么说?404? 403? 里面应该有东西在告诉你。你可以查看cluesIts,上面写着:
rooms.php:194跨源读取阻塞(CORB)阻塞跨源响应
@Kevini认为你应该在你的rooms.php和header with header('Access-Control-Allow-Origin:')@Jerson上添加内容类型头,但仍然不起作用是的,我尝试过这个。事实上,即使我复制了url并对其进行硬编码,图像仍会被破坏。如果这是源代码问题,可能您需要将图像的位置视为位于不同的域上。如果是真的,那么这个MDN页面的第二部分可能会有所帮助:,标题为“存储来自国外的图像”。如果这解决了它,我会建议下一步限制哪些域只能访问你网站的域
# Always set these headers.
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Content-Type"
Header set Access-Control-Allow-Methods "GET"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
 
# Added a rewrite to respond with a 200 SUCCESS on every OPTIONS request.
RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L]