کوتاهکننده لینک سبک، سریع و واکنشگرا با PHP خالص و MySQL. این پروژه لینکهای طولانی را به کدهای کوتاه ۷ حرفی تبدیل میکند و برای استفاده روی هاستهای معمولی طراحی شده است.
- کوتاهسازی لینک با اعتبارسنجی آدرس
- تولید کد کوتاه یکتا برای هر لینک
- ریدایرکت مستقیم به آدرس اصلی
- پنل مدیریت برای مشاهده، جستجو و حذف لینکها
- تغییر نام سایت، نام کاربری و رمز عبور مدیر از پنل
- آمار تعداد لینکها و کلیکها
- API برای دریافت اطلاعات لینک کوتاه
- محدودسازی تعداد درخواستها
- محافظت CSRF برای عملیات کوتاهسازی
- پشتیبانی از تم روشن و تاریک
- طراحی واکنشگرا برای موبایل، تبلت و دسکتاپ
- خروجی تصویری کارت در فرمتهای PNG، JPG و WEBP
- sitemap و robots پویا با تشخیص دامنهی جاری
- بدون فریمورک PHP و بدون وابستگی npm
- PHP 8 یا جدیدتر
- MySQL 5.7+ یا MariaDB
- Apache با
mod_rewrite - PDO و درایور
pdo_mysql - دسترسی نوشتن برای فایل
config.phpهنگام نصب - دسترسی نوشتن برای پوشه
tmp
-
فایلهای پروژه را در روت دامنه یا یک پوشهی وب آپلود کنید.
-
مطمئن شوید PHP و MySQL روی هاست فعال هستند.
-
آدرس زیر را در مرورگر باز کنید:
https://example.com/installer/ -
نام سایت، دامنه، اطلاعات دیتابیس و حساب مدیر را وارد کنید.
-
پس از نصب، تنظیمات در
config.phpذخیره میشود و پوشهی installer بهصورت خودکار حذف میشود.
در نسخهای که installer از آن حذف شده است، باید
config.phpرا از یک نصب قبلی یا از فرایند نصب پروژه تهیه کنید.
پنل مدیریت در مسیر زیر قرار دارد:
https://example.com/admin/
پس از ورود، از بخش «تنظیمات سایت» میتوانید موارد زیر را تغییر دهید:
- نام سایت
- نام کاربری مدیر
- رمز عبور مدیر
برای حفظ رمز فعلی، فیلد رمز جدید را خالی بگذارید.
برای دریافت اطلاعات یک لینک کوتاه، یک درخواست GET به مسیر زیر ارسال کنید:
GET https://example.com/api?short=Ab3xY9z
نمونه پاسخ موفق:
{
"status": "success",
"data": {
"short_url": "https://example.com/Ab3xY9z",
"original_url": "https://example.org/a-long-url",
"clicks": 12,
"created_at": "2026-09-11 12:00:00"
}
}مقدار short باید یک کد ۷ حرفی شامل حروف انگلیسی و عدد باشد. API بهصورت پیشفرض محدودیت درخواست دارد.
مسیرهای زیر بهصورت پویا دامنهی جاری را تشخیص میدهند:
https://example.com/sitemap.xml
https://example.com/robots.txt
صفحه اصلی نیز شامل meta description، canonical، Open Graph، Twitter Card و دادهی ساختاریافتهی JSON-LD است.
.
├── admin/ # پنل مدیریت
├── app/
│ ├── Controllers/ # کنترلرهای برنامه
│ ├── Core/ # هسته و اتصال دیتابیس
│ └── Models/ # مدلهای دیتابیس
├── assets/
│ ├── css/ # استایلها
│ ├── img/ # لوگو و تصاویر
│ └── js/ # منطق سمت کاربر
├── index.php # صفحه اصلی و endpointهای اصلی
├── robots.php # robots.txt پویا
├── sitemap.php # sitemap.xml پویا
├── .htaccess # rewrite و مسیرهای تمیز
└── config.php # تنظیمات نصب، خارج از مخزن عمومی
- فایل
config.phpرا در مخزن عمومی قرار ندهید. - رمز مدیر را فقط بهصورت هششده ذخیره کنید.
- دسترسی نوشتن پوشه
tmpرا محدود نگه دارید. - پوشههای
app،tmpوuploadsنباید فهرست شوند. - قبل از انتشار، اطلاعات دیتابیس و فایلهای محیطی را بررسی کنید.
این پروژه تحت مجوز MIT منتشر میشود.
ساخته شده توسط موکو.