رمزنگاری لینک یا URL Encode در HTML چیست و چه کاربردی دارد؟ آیا در HTML کاراکترهای ویژه نیز پشتیبانی میشوند؟ در این مقاله به آشنایی رمزنگاری لینکها صحبت میکنیم.
سرفصلهای پست
کار با URL Encode در HTML
قبل از اینکه با اینکود کردن URL آشنا شویم بهتر است که با مفهوم واژه URL آشنا شویم و متوجه شویم که چه بخشهایی را شامل میشوند.
آشنایی با URL
واژه URL مخفف کلمه Uniform Resource Locator میباشد و ساختار یک URL مثل https://mizfa.com/blog/file-path-html به صورت کل به شکل زیر میباشد:
scheme://prefix.domain:port/path/filename
بخش Scheme – به معنی نوع سرویس اینترنت میباشد. (معروفترین سرویسها http و https میباشد.)
بخش Prefix -بیانگر پیشوند های قبل از دامنه اینترنتی است. (مانند www و همچنین در بیشتر اوقات ساب دامنه)
بخش Domain – اشاره گر دامنه اینترنتی میباشد. (مثلا Mizfa.com)
بخش Port – به معنی شماره پورت در میزبان میباشد. (به صورت پیشفرض عدد ۸۰ برای پورتها تعیین میشود).
بخش Path – به معنی پوشهای درون سرور میباشد. (اگر این بخش در لینکی وجود نداشت به معنی این است که محتوا در فضای root ذخیره شده است).
بخش FileName – به معنی نام سند منبع ما میباشد.
کاربردیترین Scheme ها
در جدول زیر لیست کاربردیترین Schemeهای موجود را مشاهده میکنید:
Scheme | کوتاه شدهی کلمه : | استفاده برای : |
http | HyperText Transfer Protocol | صفحات وب عادی – رمزنگاری نشده |
https | Secure HyperText Transfer Protocol | صفحات وب امن – رمزنگاری شده |
ftp | File Transfer Protocol | دانلود و آپلود فایلها در سرور |
file | آدرس یک فایل در کامپیوتر |
اینکود کردن URL
اینکد کردن URL روشی است برای ترجمه کاراکترهای غیرقابل چاپ و یا کاراکترهای با معنای خاص در داخل URL که آدرس تبدیل شده به صورت یکپارچه و جهانی مورد پذیرش سرورها و مرورگرهای وب است.
این کاراکترهای خاص عبارت اند از:
کاراکترهای کنترل ASCII
در واقع کاراکترهای غیرقابل چاپی هستند که برای کنترل خروجی استفاده میشوند.
کاراکتر های کنترل غیر ASCII
کاراکترهای خارج از دامنه ASCII (128 کاراکتر) در این دسته قرار میگیرند.
کاراکترهای رزرو شده یا از پیش تعیین شده
این کاراکترهای خاص هستند مانند علامت دلار، جمع و تفریق و… . قرار گرفتن این کاراکتر به صورت مستقیم داخل URL باعث ایجاد تغییر در معنای آدرس میشود به همین دلیل باید اینکد شوند.
کاراکترهای ناامن
کاراکترهایی مانند فاصله، علامت سوال، علامت بزرگتر و کوچکتر و … . باعث بروز مشکل در اصل URL خواهند شد.
در فرآیند اینکد، کاراکترهای غیر مجاز با سه کاراکتر دیگر جا به جا میشوند. این سه کاراکتر شامل یک علامت درصد و دو عدد هگزادسیمال است که به موقعیت کاراکتر در ASCII اشاره دارد.
مثال
یکی از رایج ترین کاراکترهای غیر مجاز در URL، کاراکتر فاصله است. شما نمیتوانید یک فاصله را درURL به صورت مستقیم قرار دهید. در آدرس زیر فاصله به عدد دسیمال 20 تبدیل شده است.
http://www.example.com/new%20pricing.htm
آدرس بالا در واقع به صفحه new pricing.htm اشاره دارد.
پایانترم
[box type=”info” class=”question-from-users” width=””]سوال:
برای نمایش فاصله در URL از چه چیزی استفاده میشود؟
به ایمیل کسانی که پاسخ درست و کامل رو در نظرات بگن ۱۰ هزارتومان در پنل کاربری آکادمی میزفا حسابشون شارژ میشه. (البته باید در آکادمی میزفا ثبتنام کنید تا بتونید از این امتیاز استفاده کنید.)
[/box]نتیجه گیری
در این مقاله با مفهوم URL و URL Encode آشنا شدید و با کاراکترهای مجاز و غیر مجاز در رمزنگاری لینکها آشنا شدید.
اگر در رابطه با لینکها به اطلاعات بیشتری نیاز دارید، میتوانید برچسب آموزش لینکسازی میزفا را دنبال کنید.
اگر اطلاعات مفیدتری در مبحث رمزنگاری لینکها یا URL Encode میدانید، آن را با ما و دوستان خود در میزفا به اشتراک بگذارید.
10 پاسخ
جواب سوال:
علامت فاصله رو با عدد 20 نمایش میدن که باید قبل از درج کد هگزادسیمال یه علامت % قرار بگیره:
%20
سلام امیر کاملا درسته ممنون از تعاملت.
از 20% استفاده میشه مثل
mizfa.com/web%20design
درود بر تو درسته علی جان.
از سه کارکتر که شامل یک علامت درصد و دو عدد هگزا دسیمال!
سلام فرهان، خب اون دوتا عدد رو هم بگو.
اعداد دیگه اون کار رو انجام نمیدن.
url رو کامل نفهمیدم میشه یک توضیح بهم بدید؟
سلام علی اکبر، URL همون لینکه. برای اینکه توی لینک هامون فاصله باشه چیکار باید بکنیم؟ از چه چیزی استفاده میکنیم؟
پاسخ سوال :
از معادل اسکی آن استفاده می شود مثلا عدد دسیمال 20 که بصورت 20% وارد می شود.
سلام، ممنون محمد درست نوشتی. جایزه را به زودی دریافت میکنی.