1

流行的图片托管网站 Imgur 很棒,我是 PHP 新手。我只是想知道他们如何在输入 URL 时设法让图像显示在页面中,例如:

http://imgur.com/gallery/yjg8v

脚本如何知道显示某个图像yjg8v?他们在使用$_SERVER['HTTP_HOST']吗?

这里的新手,不想被勺子喂食,愿意阅读和学习,只是在互联网上找不到太多帮助。

4

3 回答 3

3

像 imgur.com 这样的网站通常“干净的 URL”,而不是带有参数的传统 URL。

在清理 URL 之前,您会看到如下内容:

imgur.com/image.php?id=yjg8v

在您的脚本中,您可以通过以下方式访问参数

$_GET['id'];

要生成干净的 URL,您可以使用 Apache 中的 mod_rewrite(或您选择的 Web 服务器中的类似技术)将“/gallery/yjg8v”映射到“/image.php?id=yjg8v”。

您可以在此处找到其他 mod_rewrite 信息。

于 2012-04-10T15:07:12.300 回答
2

yjg8v是传递给名为 的脚本的参数gallery。它看起来不像一个普通的查询字符串,因为有多种编码网站的方法,普通的查询字符串 cab 看起来像一个目录结构,但实际上是通过前端控制器或 mod_rewrite 运行以从URL 类似于查询字符串。

这篇SitePoint 文章有点旧,但演示了它如何与 mod_rewrite 完美配合。

您也可以使用Apache 的 ForceType 纯粹通过 PHP 来完成此操作

于 2012-04-10T15:06:26.140 回答
0

为了方便你,这称为url重写,所以真正的url是这样的: http://imgur.com/gallery/view.php?image= yjg8v

然后使用 $_GET['image']

于 2012-04-10T15:07:20.260 回答