آموزش ساخت کلید API در cPanel

راهنمای قدم‌به‌قدم ساخت API Token در cPanel؛ ورود به پنل، تعیین تاریخ انقضا، کپی و نگهداری کلید، نمونهٔ استفاده با پایتون و لغو توکن.

آموزش ساخت کلید API در cPanel
ساخت و استفاده از API Token برای حساب cPanel؛ کلید خصوصی، اتصال سروری و مدیریت اعتبار توکن.
فهرست مطالب

در این راهنما یاد می‌گیرید

  • ساخت API Token از داخل حساب cPanel و تعیین تاریخ انقضا
  • نگهداری خصوصی کلید و آزمایش یک درخواست خواندنی
  • لغو توکن و بررسی خطاهای رایج اتصال

۱. کلید API در cPanel چیست؟

وقتی می‌خواهید یک برنامه اطلاعات هاست را دریافت کند یا کاری را در حساب شما انجام دهد، API راه ارتباط برنامه با پنل است. «کلید API» در این آموزش همان API Token سی‌پنل است؛ برنامه آن را هنگام درخواست ارسال می‌کند و لازم نیست هر بار وارد محیط گرافیکی پنل شوید.

این راهنما برای حساب معمولی cPanel است. اگر صفحهٔ WHM را باز کرده‌اید، ابتدا وارد cPanel سرویس خود شوید؛ توکن این دو پنل را جای یکدیگر استفاده نکنید.

۲. ورود به پنل و پیدا کردن API Tokens

cPanel پنل مدیریت هاست شماست؛ فایل‌ها، دیتابیس و ترمینال را از همین صفحه مدیریت می‌کنید. برای ورود، اطلاعات سرویس فعال خود را آماده داشته باشید.

  1. وارد ناحیهٔ کاربری پایتون هاست شوید؛ از حسابی استفاده کنید که هاست را با آن تهیه کرده‌اید.
  2. در بخش سرویس‌ها، هاست فعال خود را باز کنید و گزینهٔ ورود به cPanel را بزنید. اگر لینک ورود مستقیم ندارید، از آدرس و اطلاعات ورودِ پیام فعال‌سازی سرویس استفاده کنید.
  3. پس از ورود، صفحهٔ اصلی cPanel را می‌بینید. نام ابزار موردنیاز، مثل File Manager یا Terminal را در کادر جست‌وجوی پنل بنویسید.

نام کاربری cPanel را از اطلاعات سرویس پیدا کنید. هر جا در فرمان‌ها USERNAME دیدید، همین نام را جایگزین کنید؛ این مقدار، ایمیل یا نام نمایشی حساب شما نیست.

در کادر جست‌وجوی پنل، API Tokens را بنویسید. سپس ابزار Manage API Tokens را از بخش Security باز کنید.

اگر این ابزار نمایش داده نمی‌شود، از پشتیبانی هاست دربارهٔ فعال‌بودن آن برای سرویس خود بپرسید. دسترسی این بخش را ارائه‌دهندهٔ هاست تنظیم می‌کند.

۳. ساخت توکن و تعیین تاریخ انقضا

  1. روی Create بزنید.
  2. در API Token Name نامی مشخص مانند pythonhost-monitor وارد کنید. نام باید یکتا، حداکثر ۵۰ کاراکتر و شامل حروف انگلیسی، عدد، خط تیره یا زیرخط باشد.
  3. در Should the API Token Expire? گزینهٔ Specify an expiration date را انتخاب و تاریخ پایان استفاده را مشخص کنید. قالب ورود دستی تاریخ YYYY-MM-DD است.
  4. با Create توکن را بسازید.

تاریخ انقضا بعد از ساخت قابل ویرایش نیست. برای تغییر آن، توکن تازه بسازید و تنظیمات برنامه را به‌روز کنید. زمان پایان اعتبار بر اساس ساعت سرور محاسبه می‌شود.

۴. کپی و نگهداری کلید

در صفحهٔ نتیجه، Copy را بزنید و مقدار توکن را در محل امن ذخیره کنید؛ سپس Yes, I Saved My Token را انتخاب کنید. با خروج از این صفحه، مقدار توکن دوباره قابل مشاهده نیست.

برای هر برنامه نام جداگانه‌ای انتخاب کنید تا بعداً بتوانید توکن همان برنامه را شناسایی و لغو کنید. پیش از بستن صفحه مطمئن شوید مقدار را کامل کپی کرده‌اید؛ نام توکن، خودِ کلید نیست.

توکن را مانند رمز حساب نگه دارید. آن را در کد سمت مرورگر، متغیرهای VITE_*، فایل‌های عمومی سایت، مخزن Git، عکس پنل یا پیام پشتیبانی قرار ندهید. برنامهٔ سروری باید مقدار را از تنظیمات خصوصی محیط اجرا بخواند.

۵. یک نمونهٔ استفاده با پایتون

برای یک آزمایش خواندنی می‌توانید فهرست دامنه‌های حساب را از DomainInfo/list_domains بگیرید. این درخواست دامنه‌ای ایجاد یا حذف نمی‌کند. آدرس باید مربوط به سرور cPanel باشد؛ آدرس پنل مشتریان یا یک صفحهٔ ورود، جای آن را نمی‌گیرد.

سه متغیر CPANEL_SERVER، CPANEL_USERNAME و CPANEL_API_TOKEN را در محیط اجرای خصوصی برنامه تنظیم کنید. برای اولی، آدرس HTTPS سرور مانند https://server.example.com:2083 را از اطلاعات سرویس بردارید. نام کاربری، همان نام حساب cPanel است.

دریافت دامنه‌های حساب با API Token
import json
import os
from urllib.request import Request, urlopen

server = os.environ["CPANEL_SERVER"].rstrip("/")
username = os.environ["CPANEL_USERNAME"]
token = os.environ["CPANEL_API_TOKEN"]

if not server.startswith("https://"):
    raise ValueError("CPANEL_SERVER must use HTTPS")

request = Request(
    f"{server}/execute/DomainInfo/list_domains",
    headers={"Authorization": f"cpanel {username}:{token}"},
)
with urlopen(request, timeout=15) as response:
    result = json.load(response)["result"]

if result["status"] != 1:
    raise RuntimeError(result.get("errors") or "cPanel API request failed")

print(json.dumps(result["data"], ensure_ascii=False, indent=2))
    

نمونه از کتابخانه‌های استاندارد پایتون استفاده می‌کند. هدر احراز هویت به شکل Authorization: cpanel USERNAME:TOKEN ارسال می‌شود؛ توکن را در URL قرار ندهید. موفقیت UAPI را با result.status بررسی کنید؛ مقدار 1 نشانهٔ موفقیت است. دریافت HTTP 200 به‌تنهایی کافی نیست.

اگر خطای گواهی TLS دیدید، نام میزبان و گواهی سرور را بررسی کنید. اعتبارسنجی HTTPS را برای عبور از خطا خاموش نکنید. برای آماده‌کردن محیط برنامه، آموزش اجرای Flask روی cPanel هم می‌تواند کمک کند.

۶. لغو یا جایگزینی توکن

در Manage API Tokens، روبه‌روی توکن موردنظر Manage را بزنید؛ سپس Revoke و Yes, Revoke the Token را انتخاب کنید. برنامهٔ استفاده‌کننده بعد از لغو باید با توکن دیگری تنظیم شود.

توکن منقضی‌شده خودکار از فهرست حذف نمی‌شود. اگر کلید گم شد یا احتمال افشای آن وجود دارد، همان توکن را لغو و کلید جدیدی ایجاد کنید.

۷. پرسش‌ها و رفع خطا

چرا گزینهٔ Manage API Tokens را نمی‌بینم؟

ممکن است برای حساب شما فعال نباشد. از پشتیبانی بخواهید دسترسی این ابزار را در تنظیمات سرویس بررسی کند.

خطای 401 یا ورود ناموفق را چگونه بررسی کنم؟

نام کاربری cPanel، آدرس سرور، کامل‌بودن توکن و معتبرماندن آن را بررسی کنید. ساختار هدر باید شامل عبارت cpanel، نام کاربری، علامت دو نقطه و مقدار کلید باشد. اطلاعات محرمانه را همراه گزارش خطا ارسال نکنید.

آیا توکن فقط اجازهٔ مشاهده دارد؟

خواندنی‌بودن نمونهٔ بالا به معنی محدودبودن دسترسی خودِ توکن نیست؛ API می‌تواند دادهٔ حساب را تغییر دهد. کلید را فقط در اختیار برنامه یا فرد مورداعتماد قرار دهید و دسترسی ابزارهای حساب را با ارائه‌دهندهٔ سرویس بررسی کنید.

آیا می‌توانم کلید را در برنامهٔ Vue یا React قرار دهم؟

کد و تنظیمات سمت مرورگر برای کاربر قابل دریافت‌اند. درخواست cPanel را در برنامهٔ سروری انجام دهید و کلید را در محیط خصوصی همان برنامه نگه دارید.

منابع رسمی و ادامهٔ مطالعه

عنوان گزینه‌ها ممکن است با نسخه یا زبان پنل کمی متفاوت باشد. اگر برای سرویس خود به راهنمایی نیاز دارید، از پشتیبانی پایتون هاست کمک بگیرید.

از آموزش تا اجرای پروژه

برنامهٔ پایتون شما، متصل به ابزارهای هاست

میزبانی پایتون با cPanel و پشتیبانی تخصصی؛ از آماده‌کردن محیط اجرا تا اتصال برنامهٔ سروری به API، همراه شما هستیم.

انتخاب هاست پایتون ۳ روز تست رایگان

برای راه‌اندازی پروژه، پشتیبانی تخصصی پایتون هاست همراه شماست.

قدم بعدی شما

همهٔ آموزش‌ها
آموزش اجرای Flask روی هاست cPanel
فلسک · ۱۰ دقیقه

آموزش اجرای Flask روی هاست cPanel

آموزش قدم‌به‌قدم Flask برای اولین انتشار؛ ورود به cPanel، انتقال فایل‌ها، نصب کتابخانه‌ها و تنظیم فایل شروع تا نمایش برنامه روی دامنه.

ادامهٔ آموزش
آموزش اجرای جنگو روی هاست cPanel
جنگو · ۱۲ دقیقه

آموزش اجرای جنگو روی هاست cPanel

از ورود به cPanel تا نمایش سایت جنگو روی دامنه؛ آموزش آپلود پروژه، نصب پکیج‌ها، تنظیم دیتابیس، WSGI و فایل‌های static، مناسب اولین انتشار.

ادامهٔ آموزش
چگونه منابع هاست پایتون را انتخاب کنیم؟
انتخاب هاست · ۸ دقیقه

چگونه منابع هاست پایتون را انتخاب کنیم؟

منابع هاست را به زبان ساده بشناسید؛ انتخاب RAM، CPU، دیسک و محل سرور، همراه راهنمای ورود به cPanel و مشاهدهٔ مصرف پروژه.

ادامهٔ آموزش