PixPro 图床源码,非常强大的压缩率

PixPro 图床源码,非常强大的压缩率
一款专为个人需求设计的高效图床解决方案,集成了强大的图片压缩功能与优雅的前台后台管理界面。

项目结构精简高效,提供自定义图片压缩率与尺寸设置,有效降低存储与带宽成本。

支持上传JPEG、PNG、GIF格式图片并转换为WEBP格式,支持上传SVG、WEBP图片。

支持本地储存,OSS储存,S3存储。可通过把储存桶挂载到本地的方式解锁更多储存方式。

简洁美观的前端,支持点击、拖拽、粘贴、URL、批量上传。

瀑布流管理后台,便捷管理图片,支持图片灯箱、AJAX无加载刷新。

支持自定义压缩率,默认60,可自定义修改。支持修改每日上传限制,单次上传限制

运行环境

推荐PHP 8.1 + MySQL >= 5.7
本程序依赖PHP的 Fileinfo 、 Imagick 拓展,需要自行安装。依赖 pcntl 扩展(宝塔PHP默认已安装)
要求 pcntl_signal 和 pcntl_alarm 函数可用(需主动解除禁用)。

配置信息安全

设置如下 nginx 规则
  1. location ~* /config\.ini$ {
  2.     deny all;
  3. }

复制代码

上传限制

编辑 config/validate.php 文件。同步修改static/js/script.js的头部内容
  1. <?php
  2. // 设置参数
  3. $maxUploadsPerDay = 50; // 每天最多上传50次
  4. $maxFileSize = 5 * 1024 * 1024; // 文件大小限制 5MB 修改这里同步修改 script.js
  5. function isUploadAllowed($maxUploadsPerDay) {
  6.     $cookieName = ‘upload_count’;
  7.     $currentDate = date(‘Y-m-d’);
  8.     if (isset($_COOKIE[$cookieName])) {
  9.         $uploadCounts = json_decode($_COOKIE[$cookieName], true);
  10.         if ($uploadCounts[‘date’] === $currentDate) {
  11.             if ($uploadCounts[‘count’] >= $maxUploadsPerDay) {
  12.                 return ‘上传次数过多,请明天再试’;
  13.             }
  14.             $uploadCounts[‘count’]++;
  15.         } else {
  16.             $uploadCounts = [
  17.                 ‘date’ => $currentDate,
  18.                 ‘count’ => 1
  19.             ];
  20.         }
  21.     } else {
  22.         $uploadCounts = [
  23.             ‘date’ => $currentDate,
  24.             ‘count’ => 1
  25.         ];
  26.     }
  27.     // 设置 Cookie,过期时间为一天
  28.     setcookie($cookieName, json_encode($uploadCounts), time() + 86400, “/”);
  29.     return true;
  30. }
  31. $uploadCheck = isUploadAllowed($maxUploadsPerDay);
  32. if ($uploadCheck !== true) {
  33.     echo json_encode([‘error’ => $uploadCheck]);
  34.     exit();
  35. }
  36. if ($_SERVER[‘REQUEST_METHOD’] === ‘POST’ && isset($_FILES[‘image’])) {
  37.     $file = $_FILES[‘image’];
  38.     if ($file[‘size’] > $maxFileSize) {
  39.         $maxFileSizeMB = $maxFileSize / (1024 * 1024);
  40.         echo json_encode([‘error’ => ‘文件大小超过限制,最大允许 ‘ . $maxFileSizeMB . ‘MB’]);
  41.         exit();
  42.     }
  43.     echo json_encode([‘success’ => ‘文件上传成功’]);
  44. } else {
  45.     echo json_encode([‘error’ => ‘无效的请求’]);
  46. }
  47. ?>

复制代码

修改后台地址

直接修改 admin 目录名即可

下载说明:
1.本站资源都是白菜价出售,同样的东西,我们不卖几百,也不卖几十,甚至才卖几块钱,一个永久会员能下载全站100%源码了,所以单独购买也好,会员也好均不提供相关技术服务。
2.如果源码下载地址失效请联系站长QQ进行补发。
3.本站所有资源仅用于学习及研究使用,请必须在24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担。资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您权益请联系本站删除!
4.本站站内提供的所有可下载资源(软件等等)本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发);但本网站不能保证资源的准确性、安全性和完整性,由于源码具有复制性,一经售出,概不退换。用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug;同时本站用户必须明白,【安安资源网】对提供下载的软件等不拥有任何权利(本站原创和特约原创作者除外),其版权归该资源的合法拥有者所有。
5.请您认真阅读上述内容,购买即以为着您同意上述内容,由于源码具有复制性,一经售出,概不退换。
安安资源网 » PixPro 图床源码,非常强大的压缩率