GitHub یک سیستم کنترل نسخه آنلاین نرم افزار از شرکت مایکروسافت است که توسعه دهندگان می توانند کد های منبع خود را با استفاده از آن میزبانی کنند. صفحات GitHub یک راه عالی و آسان برای میزبانی وب سایت ها یا نمایش پروژه ها به طور مستقیم از GitHub است. در این پست قصد داریم نحوه استفاده از صفحات و دامنه سفارشی GitHub را بررسی کنیم.
علاوه بر این GitHub یکی از بزرگترین انجمن های توسعه دهندگان در جهان است. این یک پلتفرم پیچیده است که همکاری و ارتباط بین توسعه دهندگان را تقویت می کند. GitHub دارای تعدادی ویژگی مفید است که تیم های توسعه را قادر می سازد تا به راحتی با هم روی یک پروژه کار کنند و به راحتی نسخه های جدید نرم افزار را بدون ایجاد اختلال در نسخه های فعلی آپلود کنند، اما این تمام استفاده ای نیست که از GitHub می شود.
به عنوان مثال، هنگامی که افزونه های جدید یک برنامه کامل شد، می توان آن ها را به راحتی در برنامه های موجود گنجاند. GitHub همچنین کار همزمان روی کد را بسیار ساده می کند تا بتوانید حتی کوچکترین بخش های یک برنامه را راحت تر رفع اشکال و کامل کنید. با GitHub می توانید با دیگران در هر نقطه از جهان همکاری داشته و روی پروژه ها کار کنید.
میزبانی با دامنه سفارشی GitHub
اگر از کد های آماده استفاده می کنید، مطمئن شوید که آن هایی که خودتان درست کرده اید را به ریپازیتوری گیت هاب خود منتقل کنید. این کار همچنین باید برای پلتفرم ها یا کتابخانه هایی مانند React، Angular یا Vue انجام شود. به خاطر داشته باشید که صفحات GitHub به طور کامل از برنامه های تک صفحه ای پشتیبانی نمی کنند، به خصوص زمانی که از مسیریابی های مبتنی بر API مانند react-router-dom استفاده کنید. برای دور زدن این موضوع، همانطور که در زیر نشان داده شده است، به جای BrowserRouter از HashRouter استفاده کنید.
import React from 'react';
import { HashRouter, Route, Link } from 'react-router-dom'
function Homepage(){
render(){
<div>
<p>Homepage</p>
</div>
}
function App(){
render(){
<HashRouter basename='/'>
<Route exact path='/homepage' component={Homepage}/>
</HashRouter>
);
}
مسیر صفحه اصلی، لینکی را مطابق شکل زیر خواهد داشت.
<a href='#/homepage'>....
دامنه های پشتیبانی شده
صفحات GitHub از دو نوع دامنه سفارشی Sub-Domain و Apex پشتیبانی می کنند. نمونه هایی از هر کدام را در زیر ببینید.
// Examples
Subdomain type | Example
-------------------|-----------------
www subdomain | www.pluralsight.com
Custom subdomain | app.pluralsight.com
Apex domain | pluralsight.com
پیکربندی یک دامنه سفارشی Github
زیر دامنه یا Sub-Domain
برای یک زیر دامنه مانند app.pluralsight.com، باید یک رکورد CNAME به ارائه دهنده خدمات دامنه خود اضافه کنید. برای پیکربندی یک زیر دامنه مراحل زیر را دنبال کنید:
- در ریپازیتوری سایت خود، روی برگه تنظیمات کلیک کنید.
- در دامنه سفارشی، نام دامنه دلخواه خود را تایپ کرده و ذخیره کنید. GitHub به طور خودکار یک commit با یک فایل CNAME در Root مخزن شما ایجاد می کند.
- از داشبورد ارائه شده توسط ارائه دهنده دامنه خود بازدید کنید و یک رکورد CNAME را که به زیر دامنه شما اشاره دارد اضافه کنید. با توجه به مثال بالا، برای زیر دامنه www.pluralsight.com، یک رکورد CNAME برای www.pluralsight.com به github.io اشاره می کند که در آن نام کاربری GitHub شما وجود دارد.
شما می توانید به صورت اختیاری انتخاب کنید که HTTPS را در تنظیمات خود GitHub اعمال کنید. توجه داشته باشید که تنظیم تغییرات DNS ممکن است تا 24 ساعت طول بکشد.
اگر در مورد بهترین DNS های اندروید به اطلاعات بیشتری نیازی دارید، توصیه می کنیم پست دیگر ما درمورد DNS خصوصی اندروید را بررسی کنید.
دامنه های Apex
برای دامنه های apex، یک رکورد ALIAS یا ANAME/A را پیکربندی کنید. مثل قبل، یک نمونه دامنه apex می تواند pluralsight.com باشد.
مراحل زیر را برای پیکربندی دامنه اپکس دنبال کنید:
- در ریپازیتوری خود، روی تب تنظیمات کلیک کنید.
- در بخش “دامنه سفارشی“، نام دامنه سفارشی خود را تایپ کرده و ذخیره کنید. GitHub به طور خودکار یک commit با یک فایل CNAME در Root ریپازیتوری شما ایجاد می کند.
- به داشبورد ارائه شده توسط ارائه دهنده دامنه خود بروید و یک رکورد ALIAS یا ANAME/A که به دامنه apex شما اشاره می کند، به آدرس های IP صفحات GitHub اضافه کنید که عبارتند از:
- 185.199.108.153
- 185.199.109.153
- 185.199.110.153
- 185.199.111.153
نتیجه
امیدواریم این پست برای شما مفید بوده باشد و حالا بتوانید به راحتی از دامنه سفارشی GitHub استفاده کنید. شما در این راهنما نحوه استفاده از نام دامنه سفارشی با صفحات GitHub را یاد گرفتید، اما اگر به اطلاعات بیشتری در مورد تنظیم DNS گوشی نیاز دارید، پست دیگر ما را نیز بررسی کینید.