随机图片 API 的作用很简单:每次访问接口时,随机返回一张图片。它可以用来制作网站随机背景、博客头图、壁纸接口等。
下面介绍一种比较简单的搭建方法。
下面的域名均为演示域名,实际搭建操作换成自己的域名
一、准备工作
在开始搭建之前,需要准备以下内容:
1.PHP
环境确保服务器已经安装 PHP,PHP 7.4、PHP 8.0 或 PHP 8.1 都可以使用。
如果使用宝塔面板,可以直接在软件商店中安装 PHP。
2.准备图片资源
将需要随机展示的图片上传到服务器或图床中。
例如,电脑端图片地址为:
https://imgres.rui26.com/pc/s1.webp
https://imgres.rui26.com/pc/s2.webp
https://imgres.rui26.com/pc/s3.webp
这里我添加到24:
https://imgres.rui26.com/pc/s24.webp
需要注意,图片编号最好保持连续,否则随机到不存在的编号时会出现 404 错误。
二、创建随机图片接口
1. 创建 PHP 文件
在网站目录中创建一个 PHP 文件,例如:
pc.php
然后写入以下代码:
<?php
// 图片最小编号
$min = 1;
// 图片最大编号
$max = 24;
// 随机生成一个图片编号
$number = random_int($min, $max);
// 拼接图片地址
$imageUrl = 'https://imgres.rui26.com/pc/s' . $number . '.webp';
// 禁止缓存接口
header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
header('Pragma: no-cache');
header('Expires: 0');
// 跳转到随机图片
header('Location: ' . $imageUrl, true, 302);
exit;
这段代码会在 1 到 24 之间随机生成一个数字,然后跳转到对应的图片地址。
例如随机到数字 8,就会跳转到:
https://imgres.rui26.com/pc/s8.webp
2. 上传 PHP 文件
将 pc.php 上传到网站目录中。
例如:
/www/wwwroot/api.rui26.com/pc.php
上传完成后,对应的访问地址就是:
https://api.rui26.com/pc.php
三、访问随机图片 API
在浏览器中打开接口地址:
https://api.rui26.com/pc.php
每次刷新页面,接口都会重新随机一张图片。
也可以直接在网页中调用:

四、添加移动端随机图片接口
如果电脑端和移动端使用不同尺寸的图片,可以再创建一个:
mobile.php
写入以下代码:
<?php
// 图片数量为 24 张
$number = random_int(1, 24);
// 移动端图片地址
$imageUrl = 'https://imgres.rui26.com/mobile/s' . $number . '.webp';
// 禁止缓存
header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
header('Pragma: no-cache');
header('Expires: 0');
// 跳转到随机图片
header('Location: ' . $imageUrl, true, 302);
exit;
访问地址:
https://api.rui26.com/mobile.php
每次访问时,会随机跳转到一张移动端图片。
五、修改图片数量
如果以后增加了图片,只需要修改最大编号。
例如图片增加到了 50 张:
$number = random_int(1, 50);
同时确保图片目录中存在:
s1.webp
到:
s50.webp
否则随机到缺少的图片编号时,会出现无法访问的问题。
六、注意事项
- 跳转状态码建议使用
302,不要使用301。因为301可能被浏览器长期缓存,导致接口一直显示同一张图片。 - PHP 接口不要设置长期缓存,否则随机效果可能失效。
- 图片文件本身可以接入 CDN 并设置缓存,这样可以减少服务器压力。
- 图片名称和扩展名必须保持统一,例如全部使用:
s1.webp
s2.webp
s3.webp
- 如果接口一直返回同一张图片,可以在调用地址后添加时间戳:
<img src="https://api.rui26.com/pc.php?t=123456">
也可以通过 JavaScript 自动生成时间戳:
<img id="randomImage" alt="随机图片">
<script>
document.getElementById('randomImage').src =
'https://api.rui26.com/pc.php?t=' + Date.now();
</script>
七、总结
使用 PHP 搭建随机图片 API 并不复杂,主要步骤就是:
准备图片、创建 PHP 文件、随机生成编号,然后使用 302 跳转到对应的图片地址。
这种方法不需要 PHP 直接传输图片文件,图片可以通过独立图床或 CDN 加载,因此服务器压力也比较小。

Comments NOTHING