1

我在 mac osx10.6.8 上。我正在使用 XAMPP。我通过输入 localhost/index.php 等来通过 Firefox 运行我的所有脚本。所有脚本都运行,到目前为止我编写的所有内容都运行良好。

现在,我可以浏览我的文件夹并上传图片。它将成功保存和重命名图像并将其存储在我的 htdocs 文件夹中。问题是当我尝试显示刚刚保存的图像时。

我有以下代码:

<img src="file:///applications/XAMPP/xamppfiles/htdocs/Images/1921304523pvyNZ.jpg">

如果我在file:///applications/XAMPP/xamppfiles/htdocs/Images/1921304523pvyNZ.jpg地址栏中输入,图片就会出现。但是当我尝试使用 img src 时,只显示一个损坏的图像。当我单击获取该损坏图像的信息时,它会为我提供确切的地址,甚至会在“媒体预览”中显示该图像。为什么,然后它不会显示在网站上?

4

2 回答 2

4

file://使用..而不是http://localhost/path/to/image/.. 那么图像将通过 xampp 而不是从文件系统提供。我希望这是您浏览器的一项安全功能,而不是混合文件系统和 http 提供的内容。

在你的情况下,你可能想要http://localhost/Images/1921304523pvyNZ.jpg

此外,请确保“图像”确实有一个大写字母“I”。在 OSX 上没什么大不了的,但如果你部署在 Linux/UNIX 服务器上,就会有。

正如 Fabricio 指出的那样,您可以/应该相对引用图像,并使您的 Web 应用程序易于部署。因此,如果您正在显示http://localhost/index.php,则图像路径只是Images/xxxx.jpg.

于 2012-05-29T03:20:45.043 回答
0

我有一个类似的问题。我通过查看我的 Xampp 错误日志发现了问题。由于某种原因,我的图像文件权限非常有限。-rx--------...我只是更改了文件权限以允许所有用户能够读取这些文件。在我看来只是一个注释,因为我很懒,其他人可能会不同意,如果它在你自己的计算机上,你可以给他们完全的权限,即 777。但在最佳实践中,你应该只给文件安全所需的权限原因...

由于您使用的是 Mac,因此您可以使用该chmod命令在终端中执行此操作。
转到终端中的文件目录。 cd /Applications/XAMP/xamppfiles/htdocs/.../images/

然后输入 chmod 644 yourfilename.extension

您可以通过使用确认已更改ls -l

644应该给你-rw-r--r--这应该很安全。

于 2014-10-17T17:27:50.167 回答