Last active 1716895952

xym's Avatar xym revised this gist 1716895952. Go to revision

No changes

xym's Avatar xym revised this gist 1716895847. Go to revision

2 files changed, 92 insertions

bbimg.php(file created)

@@ -0,0 +1,42 @@
1 + <?php
2 + // 目标链接
3 + $targetUrl = 'https://source.unsplash.com/collection/2094000/800x400';
4 +
5 + // 创建 cURL 资源
6 + $ch = curl_init($targetUrl);
7 +
8 + // 设置 cURL 选项
9 + curl_setopt_array($ch, [
10 + CURLOPT_USERAGENT => $_SERVER['HTTP_USER_AGENT'],
11 + CURLOPT_FOLLOWLOCATION => true,
12 + CURLOPT_RETURNTRANSFER => true,
13 + ]);
14 +
15 + // 执行 cURL 请求并获取返回的数据
16 + $response = curl_exec($ch);
17 +
18 + // 检查是否有 cURL 错误
19 + if (curl_errno($ch)) {
20 + echo 'cURL Error: ' . curl_error($ch);
21 + exit;
22 + }
23 +
24 + // 获取 cURL 请求的 HTTP 状态码
25 + $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
26 +
27 + // 关闭 cURL 资源
28 + curl_close($ch);
29 +
30 + if ($httpCode === 200) {
31 + // 获取图片类型
32 + $contentType = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
33 +
34 + // 设置响应头为图片类型
35 + header('Content-Type: ' . $contentType);
36 +
37 + // 输出获取的图片数据
38 + echo $response;
39 + } else {
40 + echo 'Failed to fetch image.';
41 + }
42 + ?>

newimg.php(file created)

@@ -0,0 +1,50 @@
1 + <?php
2 + // 目标链接
3 + $targetUrl = 'https://source.unsplash.com/collection/2094000/800x400';
4 +
5 + // 创建 cURL 资源
6 + $ch = curl_init($targetUrl);
7 +
8 + // 设置 cURL 选项
9 + curl_setopt_array($ch, [
10 + CURLOPT_USERAGENT => $_SERVER['HTTP_USER_AGENT'],
11 + CURLOPT_FOLLOWLOCATION => true,
12 + CURLOPT_RETURNTRANSFER => true,
13 + ]);
14 +
15 + // 执行 cURL 请求并获取返回的数据
16 + $response = curl_exec($ch);
17 +
18 + // 检查是否有 cURL 错误
19 + if (curl_errno($ch)) {
20 + echo 'cURL Error: ' . curl_error($ch);
21 + exit;
22 + }
23 +
24 + // 获取 cURL 请求的 HTTP 状态码
25 + $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
26 +
27 + // 关闭 cURL 资源
28 + curl_close($ch);
29 +
30 + if ($httpCode === 200) {
31 + // 获取图片类型
32 + $contentType = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
33 +
34 + // 禁用输出缓冲
35 + ob_end_clean();
36 +
37 + // 设置响应头为图片类型
38 + header('Content-Type: ' . $contentType);
39 +
40 + // 禁止缓存
41 + header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
42 + header('Cache-Control: post-check=0, pre-check=0', false);
43 + header('Pragma: no-cache');
44 +
45 + // 输出获取的图片数据
46 + echo $response;
47 + } else {
48 + echo 'Failed to fetch image.';
49 + }
50 + ?>
Newer Older