دوستی از شما میخواهد URL را برایش بفرستید. یک فرم ثبتنام URL وبسایت شما را میخواهد. کارشناس پشتیبانی میپرسد در نوار آدرس شما چه نوشته شده است. هر سه یک چیز را میخواهند: آدرس کامل یک صفحه، همان سطری که معمولاً با https:// شروع میشود و دقیقاً به یک صفحه، تصویر یا فایل میرسد.
در این نوشته هر بخش URL و نحوه استفاده مرورگر از آن را توضیح میدهیم. سپس نشان میدهیم چگونه روی هر دستگاهی یک URL را کپی کنید، %20 چه معنایی دارد، پیش از کلیک چگونه یک پیوند را بررسی کنید و آدرس پروکسی چگونه به شکل URL نوشته میشود.
URL چیست؟
URL آدرس یک منبع مشخص در اینترنت است: یک صفحه وب، یک تصویر، یک فایل PDF، یک ویدیو یا پاسخی از یک API. این حروف کوتاهشده Uniform Resource Locator هستند و واژه کلیدی آن «Locator» یعنی مکانیاب است: URL فقط چیزی را نام نمیبرد، بلکه میگوید آن را از کجا و چگونه باید دریافت کرد.
وقتی آدرسی را تایپ میکنید، روی پیوندی کلیک میکنید یا یک کد QR را اسکن میکنید، مرورگر URL را میخواند تا تصمیم بگیرد با کدام پروتکل صحبت کند، با کدام سرور تماس بگیرد و چه چیزی را درخواست کند. راهنمای مقدماتی MDN آن را آدرس یک منبع یکتا در وب مینامد. در گفتوگوی روزمره «URL»، «آدرس وب» و «پیوند» یا «لینک» تقریباً یک معنا دارند.
بخشهای یک URL کداماند؟
یک URL معمولی وب حداکثر هشت بخش دارد که همیشه به یک ترتیب میآیند. این آدرس نمونه همه آنها را دارد:
https://shop.example.com:443/blog/what-is-a-url?page=2&sort=new#faq| بخش | در نمونه | چه کاری میکند |
|---|---|---|
| طرح (scheme) | https | پروتکل را تعیین میکند |
| زیردامنه | shop | بخشی که صاحب دامنه ساخته است |
| دامنه سطح دوم | example | نام ثبتشده |
| دامنه سطح بالا | com | پسوندی که نام زیر آن قرار دارد |
| پورت | 443 | سرویس روی سرور را انتخاب میکند |
| مسیر (path) | /blog/what-is-a-url | به صفحه یا فایل اشاره میکند |
| پرسوجو (query) | ?page=2&sort=new | جزئیات اضافه برای سرور |
| قطعه (fragment) | #faq | نقطهای درون صفحه |
طرح (scheme). طرح اول میآید و با دونقطه تمام میشود؛ آدرسهای وب پس از آن // میگذارند. https یعنی اتصال رمزگذاریشده و http یعنی اتصال بدون رمزگذاری. از طرحهای دیگر میتوان به mailto: برای نشانی ایمیل و file: برای فایلی روی رایانه خودتان اشاره کرد.
میزبان (host). shop.example.com در مجموع میزبان است، یعنی نام سرور. آن را از راست به چپ بخوانید: com دامنه سطح بالاست، example نامی است که کسی زیر آن ثبت کرده است (این دو با هم، یعنی example.com، نام دامنه را میسازند) و shop زیردامنهای است که صاحب دامنه ساخته است؛ www آشنا هم یک زیردامنه است. میزبان میتواند یک آدرس آیپی خالی هم باشد، مانند http://192.0.2.10/.
پورت. پورت عددی است که به سرور میگوید کدام برنامه باید اتصال را دریافت کند. هر طرح یک پورت پیشفرض دارد: در استاندارد URL گروه WHATWG که مرورگرها از آن پیروی میکنند، این پورت برای http عدد 80 و برای https عدد 443 است. پورت پیشفرض در آدرس نوشته نمیشود: تجزیهگر (parser) URL در Node.js، که از همین استاندارد پیروی میکند، نمونه ما را بدون :443 بازنویسی کرد. پورت را فقط وقتی میبینید که سایتی از پورت دیگری استفاده کند، مانند :8443.
مسیر (path). مسیر از نخستین اسلش تکی تا ? یا # ادامه دارد. زمانی پوشهها و فایلهای روی سرور را بازتاب میداد؛ امروز نرمافزار سرور میتواند هر مسیری را به هر محتوایی نگاشت کند.
پرسوجو (query). پرسوجو با ? شروع میشود و جفتهای name=value را نگه میدارد که با & از هم جدا شدهاند؛ اینجا page=2 و sort=new. کادرهای جستوجو، فیلترها، شماره صفحهها و برچسبهای ردیابی دادههای خود را اینجا میگذارند.
قطعه (fragment). قطعه با # شروع میشود و به جایی درون صفحه اشاره میکند، معمولاً یک عنوان. این بخش هرگز از دستگاه شما بیرون نمیرود: وقتی آدرس نمونه را با curl از یک سرور آزمایشی کوچک روی رایانه خودمان درخواست کردیم، سرور /blog/what-is-a-url?page=2&sort=new را دریافت کرد و #faq هرگز به آن نرسید.
بخش نهمی که بهندرت دیده میشود میتواند میان // و میزبان قرار بگیرد: اطلاعات کاربر (userinfo) به شکل name:password@. RFC 3986، استاندارد اصلی URL، شکل دارای رمز عبور را در سال 2005 منسوخ کرد، اما این شکل هنوز در دو جا زنده است که در ادامه به آنها میپردازیم: پیوندهای فیشینگ و تنظیمات پروکسی.
مرورگر چگونه از URL استفاده میکند؟
مرورگر URL را از چپ به راست میخواند و هر بخش را به یک کار تبدیل میکند:
- طرح.
httpsبه مرورگر میگوید یک اتصال رمزگذاریشده باز کند. - میزبان. مرورگر از DNS، فهرست نامهای اینترنت، آدرس آیپی پشت
shop.example.comرا میپرسد. - پورت. مرورگر روی پورت 443، پورت پیشفرض
https، به آن آدرس آیپی وصل میشود. - مسیر و پرسوجو. هر دو را در خط درخواست به سرور میفرستد:
GET /blog/what-is-a-url?page=2&sort=new. - پاسخ. سرور محتوای مربوط به آن مسیر و پرسوجو را پیدا میکند و برمیگرداند، یا با خطایی مانند
404 Not Foundپاسخ میدهد. - قطعه. پس از بارگذاری صفحه، مرورگر به بخشی که با
faqعلامت خورده است اسکرول میکند.
پیوندهای درون یک صفحه اغلب بخشهایی را حذف میکنند: پیوندی که در صفحه https://example.com/blog/ به شکل /pricing نوشته شده یک URL نسبی (relative) است و مرورگر آن را بر اساس صفحه فعلی به https://example.com/pricing کامل میکند.
تفاوت URL، نام دامنه و آدرس آیپی
URL آدرس کامل یک صفحه است، نام دامنه فقط نام سروری است که درون آن آمده، و آدرس آیپی عددی است که آن نام به آن اشاره میکند.
| اصطلاح | نمونه | چه چیزی را مشخص میکند |
|---|---|---|
| URL | https://example.com/blog/post | یک صفحه یا فایل |
| نام دامنه | example.com | یک وبسایت یا سرویس |
| آدرس آیپی | 192.0.2.10 | یک دستگاه در شبکه |
همه صفحههای یک سایت نام دامنه مشترکی دارند اما هر کدام URL خودش را دارد، و چند نام دامنه میتوانند به یک سرور اشاره کنند. اینکه نامها چگونه ثبت و تمدید میشوند و به سرورها اشاره میکنند، در نوشته دامنه چیست و چگونه آن را ثبت کنیم؟ آمده است.
رایانهها با آدرس آیپی به یکدیگر میرسند؛ نامهای دامنه وجود دارند تا مردم مجبور نباشند عدد به خاطر بسپارند. آدرسهای عمومی و خصوصی، و راه پیدا کردن آدرس خودتان، در نوشته آدرس آیپی چیست؟ توضیح داده شدهاند.
URL یک صفحه را چگونه پیدا و کپی کنیم؟
URL صفحهای که در آن هستید در نوار آدرس مرورگر است، همان کادر بلندی که بالا یا پایین صفحه قرار دارد (راهنمای فارسی گوگل آن را «نوار نشانی» مینامد). برنامههایی که نوار آدرس ندارند، پیوند را پشت دکمه اشتراکگذاری نگه میدارند.
در رایانه
- یک بار روی نوار آدرس کلیک کنید. کل آدرس انتخاب میشود، حتی بخشهایی که مرورگر هنگام نمایش کوتاه میکند.
- روی بخش انتخابشده کلیک راست کنید و کپی کردن را انتخاب کنید، یا Ctrl+C را فشار دهید (در مک Cmd+C).
- آدرس را با Ctrl+V (در مک Cmd+V) هر جا که لازم دارید بچسبانید.
این مراحل در کروم، مایکروسافت اج، فایرفاکس و سافاری یکسان است.
در آیفون
- در سافاری یا کروم روی نوار آدرس ضربه بزنید تا کل آدرس انتخاب شود. سافاری در چیدمانهای زبانه Compact (فشرده) و Bottom (پایین) نوار را زیر صفحه و در Top (بالا) بالای آن نشان میدهد؛ چیدمان را در مسیر Settings > Apps > Safari > Tabs (تنظیمات > برنامهها > سافاری > زبانهها) انتخاب میکنید.
- روی آدرس انتخابشده ضربه بزنید، سپس Copy (کپی کردن) را بزنید.
اگر میخواهید خود صفحه را بفرستید، در پایین سافاری روی دکمه Page Menu (منوی صفحه) و سپس Share (اشتراکگذاری) ضربه بزنید (در چیدمان Bottom یا Top، روی دکمه Share).
در اندروید
- در کروم روی نوار آدرس ضربه بزنید.
- زیر نوار، کنار آدرس صفحه، روی نماد کپی (کپی کردن) ضربه بزنید.
برای فرستادن پیوند به یک برنامه، منوی بیشتر (سه نقطه) را کنار نوار آدرس باز کنید و همرسانی… را انتخاب کنید.
در برنامه یوتیوب
- ویدیو را باز کنید و زیر پخشکننده روی همرسانی ضربه بزنید.
- روی کپی پیوند ضربه بزنید.
در youtube.com زیر ویدیو روی همرسانی و سپس کپی کردن کلیک کنید؛ اگر پیش از آن کادر شروع در را علامت بزنید، پیوند ویدیو را از همان لحظه شروع میکند. برنامههای دیگر هم معمولاً پیوند را در یک منوی اشتراکگذاری نگه میدارند، با برچسبی مخصوص خودشان.
%20 در URL یعنی چه؟
%20 همان فاصله (space) است، به شکلی که URL بتواند آن را حمل کند. یک URL فقط میتواند حروف لاتین، رقمها، نشانههای -، .، _ و ~ و مجموعهای از نویسههای کاربردی مانند /، ?، #، & و @ را در خود داشته باشد. هر نویسه دیگر، و هر نویسه کاربردی که قرار است متن ساده باشد، با کدگذاری درصدی (percent-encoding) نوشته میشود: یعنی با % و کد دو رقمی شانزدهشانزدهی (هگزادسیمال) هر بایت جایگزین میشود، قاعدهای که در RFC 3986 آمده است.
در آزمایش ما فاصله به %20، @ به %40 و : به %3A تبدیل شد. حروف خارج از الفبای لاتین پایه، از جمله حروف فارسی، نخست به بایتهای UTF-8 تبدیل میشوند و هر حرف فارسی دو بایت میشود؛ از این رو واژه «گل» در مسیر یک آدرس به %DA%AF%D9%84 تبدیل شد. به همین دلیل یک پیوند فارسی وقتی جای دیگری چسبانده میشود ممکن است به رشتهای طولانی از % و حرف و عدد تبدیل شود.
دادههای فرم از گونهای استفاده میکنند که در آن فاصله به + تبدیل میشود؛ به همین دلیل در آدرسهای جستوجو اغلب hello+world را میبینید. نامهای دامنه از قاعده دیگری پیروی میکنند: نامی که حروفی خارج از الفبای لاتین پایه (ASCII) دارد به شکلی ASCII تبدیل میشود که با xn-- شروع میشود؛ برای نمونه bücher.example به xn--bcher-kva.example تبدیل میشود.
اسلاگ (slug) در URL چیست و چگونه آدرسهای خوانا بسازیم؟
اسلاگ (slug) بخش پایانی و خوانای مسیر یک صفحه است: در https://example.com/blog/what-is-a-url اسلاگ what-is-a-url است. سیستمهای مدیریت محتوا معمولاً آن را از عنوان صفحه میسازند و میتوانید پیش از انتشار ویرایشش کنید.
راهنمای گوگل درباره ساختار URL فهرست کوتاهی برای صاحبان سایت دارد:
- واژههای خوانا، نه شمارههای شناسه طولانی.
- خط تیره میان واژهها، نه زیرخط.
- واژههایی که مخاطبانتان به کار میبرند، به زبان خودشان.
- فقط یک حالت برای حروف لاتین. گوگل در مسیرها میان حروف بزرگ و کوچک فرق میگذارد، پس
/Blogو/blogدو URL متفاوتاند. - بدون پارامترهایی که محتوا را تغییر نمیدهند. هر نسخه تازه از پرسوجو یک URL دیگر است که موتورهای جستوجو باید آن را بخزند.
URL را پس از انتشار ثابت نگه دارید. اگر ناچارید آن را تغییر دهید، آدرس قدیمی را با تغییر مسیر دائمی (ریدایرکت HTTP 301) به آدرس جدید بفرستید تا پیوندها، نشانکها و نتایج جستوجو همچنان کار کنند.
پیش از کلیک، یک پیوند را چگونه بخوانیم؟
اول میزبان را پیدا کنید، چون نام سروری را میگوید که به آن میرسید: هر چیزی میان // و نخستین /، ? یا # بعدی، منهای هر چیزی که تا یک @ آمده است. در انتهای سمت راست آن، نام ثبتشده و پسوندش قرار دارند؛ هر چیزی را که پیش از آنها یا بعدتر در مسیر بیاید، صاحب آن سرور میتواند آزادانه انتخاب کند.
سه ترفند به این تکیه دارند که مردم پیوند را از سمت چپ میخوانند:
- نام برند بهعنوان زیردامنه.
https://example.com.login-check.example.net/verifyمتعلق بهexample.netاست. - نام برند در مسیر. در
https://login-check.example.net/example.com/accountسرور همچنانlogin-check.example.netاست. - ترفند
@. درhttps://example.com@login.example.net/accountهر چیزی پیش از@اطلاعات کاربر است. تجزیهگر آزمایشی ماexample.comرا نام کاربری وlogin.example.netرا سرور خواند. RFC 9110، استاندارد HTTP، به همین دلیل از نرمافزارها میخواهد چنین اطلاعات کاربری را که از منابع نامطمئن میآید خطا به شمار آورند.
برای دیدن آدرس واقعی پیش از کلیک، در رایانه نشانگر ماوس را روی پیوند نگه دارید، یا در سافاری آیفون پیوند را لمس کنید و نگه دارید تا پیشنمایش آن را ببینید. پیوندهای کوتاه سرویسهای کوتاهکننده پیوند تا وقتی بازشان نکنید مقصد را پنهان میکنند؛ پس با پیوندهای کوتاه غیرمنتظره محتاط باشید.
نامهایی که فقط یک حرف با نام واقعی فرق دارند، مثلاً رقم 1 بهجای حرف l، ترفند جداگانهای با نشانههای هشدار خاص خود هستند که در نوشته typosquatting چیست؟ آمدهاند.
آدرس پروکسی چگونه به شکل URL نوشته میشود؟
آدرس پروکسی هم به شکل URL نوشته میشود و برای حمل اطلاعات ورود به پروکسی از همان جایگاه اطلاعات کاربر استفاده میکند که صفحههای وب کنارش گذاشتهاند:
http://user:pass@pr.proxynet.io:8000httpپروتکلی است که با آن با پروکسی صحبت میکنید؛ پروکسی SOCKS5 ازsocks5همراه با پورت SOCKS5 که سازنده نقطه اتصال نشان میدهد استفاده میکند.user:passنام کاربری و رمز عبور پروکسی شماست.pr.proxynet.ioمیزبان سرور پروکسی است.8000پورتی است که سرور پروکسی روی آن گوش میدهد.
اگر رمز عبور نویسهای دارد که در URL کاربرد ویژه دارد، مانند @، : یا #، آن را با کدگذاری درصدی بنویسید، وگرنه ابزار URL را در جای اشتباه تقسیم میکند: p@ss:w0rd به p%40ss%3Aw0rd تبدیل میشود. راهنمای curl میگوید curl کدگذاری درصدی نام کاربری و رمز عبور را در رشته پروکسی باز میکند، پس %40 به شکل @ به پروکسی میرسد.
بیشتر ابزارهای خط فرمان و کتابخانههای برنامهنویسی پروکسی را به همین شکل میپذیرند. وقتی پروکسی مسکونی را راهاندازی میکنید، نام کاربری، رمز عبور، میزبان و پورت شما در همین الگو قرار میگیرند.
کجا با URL روبهرو میشوید؟
- نوار آدرس هر مرورگر.
- پیوندها در ایمیلها، پیامهای گفتوگو، اسناد و پستهای شبکههای اجتماعی.
- کدهای QR که معمولاً یک URL را در خود نگه میدارند.
- فرمهایی که «وبسایت شما» یا پیوند پروفایلتان را میخواهند.
- کد و تنظیمات برنامهها، جایی که نقطههای اتصال API، وبهوکها و پروکسیها به شکل URL نوشته میشوند.
اشتباهات رایج
- فرستادن فقط دامنه.
example.comصفحه اصلی را باز میکند، نه صفحهای که منظورتان بود. - فرستادن URL حاوی داده خصوصی. پیوندهای ایمیلهای بازنشانی رمز عبور یا اسناد اشتراکی ممکن است توکنی داشته باشند که مانند کلید عمل میکند.
- قضاوت درباره پیوند از روی ابتدای آن. انتهای سمت راست میزبان تعیین میکند به کجا میرسید.
- تغییر اسلاگ منتشرشده بدون تغییر مسیر. پیوندها و نشانکهای قدیمی به خطای 404 میرسند.
- نویسههای خاص بدون کدگذاری در رمز پروکسی. یک
@یا#کدگذارینشده URL پروکسی را خراب میکند. - استفاده از
#برای نمایش محتوای متفاوت. سرور هرگز قطعه را نمیبیند و گوگل معمولاً آن را نادیده میگیرد.
راهنمای انتخاب
| نیاز شما | چه باید کرد |
|---|---|
| فرستادن صفحهای که در آن هستید برای کسی | آدرس کامل را از نوار آدرس کپی کنید |
| همرسانی یک ویدیوی یوتیوب | همرسانی > کپی پیوند |
| بررسی مقصد یک پیوند | نشانگر را روی آن نگه دارید یا لمس کنید و نگه دارید، سپس میزبان را بخوانید |
| نامگذاری یک صفحه تازه در سایت | اسلاگی کوتاه، با حروف کوچک و خط تیره |
| تغییر نام صفحهای منتشرشده | آدرس قدیمی را با تغییر مسیر 301 به آدرس جدید بفرستید |
| قرار دادن پروکسی در یک اسکریپت | http://user:pass@host:port با رمز کدگذاریشده به روش درصدی |
پرسشهای متداول
URL مخفف چیست؟
URL مخفف Uniform Resource Locator است که در فارسی «مکانیاب منبع یکسان» ترجمه میشود. «مکانیاب» یعنی URL میگوید یک منبع کجاست و چگونه باید آن را دریافت کرد، و همین آن را از یک نام ساده جدا میکند. به آن آدرس وب یا نشانی اینترنتی هم میگویند.
آیا URL همان پیوند است؟
تقریباً. پیوند متن، تصویر یا دکمهای است که روی آن کلیک میکنید، و URL آدرسی است که درون آن ذخیره شده است. متن نمایشی یک پیوند میتواند هر چیزی بگوید؛ به همین دلیل بهتر است پیش از کلیک URL را بررسی کنید.
تفاوت URL و URI چیست؟
URI (Uniform Resource Identifier، شناسه منبع یکسان) هر رشتهای است که یک منبع را شناسایی میکند، و URL نوعی URI است که راه رسیدن به منبع را هم میگوید. RFC 3986 از مشخصات تازه میخواهد اصطلاح کلی URI را به کار ببرند، در حالی که استاندارد URL که مرورگرها از آن پیروی میکنند برای همه چیز «URL» میگوید. در کاربرد روزمره این دو یک معنا دارند.
آیا URL به بزرگی و کوچکی حروف حساس است؟
تا حدی. طرح و میزبان حساس نیستند: HTTPS://Shop.EXAMPLE.com و https://shop.example.com به یک جا میروند و تجزیهگر آزمایشی ما هر دو را به حروف کوچک تبدیل کرد. مسیر و پرسوجو، بسته به سرور، میتوانند حساس باشند و گوگل /Blog و /blog را دو URL جداگانه میداند.
یک URL چقدر میتواند طولانی باشد؟
استانداردهای URL حداکثر ثابتی تعیین نکردهاند. RFC 9110 توصیه میکند نرمافزارهای HTTP دستکم آدرسهایی به طول 8,000 اکتت (بایت) را بپذیرند و کروم طول URL را به 2 مگابایت محدود میکند. بسیاری از سرورها خیلی زودتر کنار میکشند و با 414 URI Too Long پاسخ میدهند؛ پس دادههای طولانی را در URL نگذارید.
چه چیزی یک URL را معتبر میکند؟
یک URL معتبر با یک طرح و دونقطه شروع میشود، در آدرسهای وب پس از // یک میزبان دارد و هر نویسه بیرون از مجموعه مجاز، از جمله فاصله، را با کدگذاری درصدی مینویسد. مرورگرها لغزشهای کوچکی مانند یک فاصله را بیصدا اصلاح میکنند، اما فرمها، APIها و برنامههای دیگر ممکن است همان آدرس را رد کنند.
خلاصه
URL آدرس کامل یک منبع در وب است: طرح، میزبان، پورت اختیاری، مسیر، پرسوجو و قطعه، همیشه به همین ترتیب. میزبان سرور را مشخص میکند و مسیر صفحه را، و بخشهای پس از ? و # جزئیاتی برای سرور یا مرورگر میافزایند. URL را از نوار آدرس یا دکمه اشتراکگذاری کپی کنید، پیش از کلیک روی یک پیوند ناآشنا میزبان آن را بخوانید و نویسههای خاص رمز پروکسی را با کدگذاری درصدی بنویسید. اگر برای ابزارها یا اسکریپتهایتان پروکسی راهاندازی میکنید، گزینهها را در صفحه محصولات پروکسی ما مقایسه کنید.




