هر کدام از Status-Code در زیر شرح داده شده است، از جمله توضیح اینکه از کدام روش می تواند پیروی کند و هر نوع اطلاعاتی که نیاز به پاسخ دارد.

تعریف خطای ۱xx

این کلاس کد وضعیت نشان دهنده یک پاسخ موقت است، که شامل تنها خط وضعیت و سرفصل های اختیاری است و با یک خط خالی پایان می یابد. هدرهای موردنیاز برای این کلاس کد وضعیت وجود ندارد. از آنجا که HTTP / 1.0 هیچ کدهای وضعیت ۱xx را تعریف نمی کند، سرور ها نباید یک پاسخ ۱xx به یک سرویس HTTP / 1.0 ارسال کنند، به استثنای شرایط آزمایشی.هدرهای موردنیاز برای این کلاس کد وضعیت وجود ندارد.از آنجا که HTTP / 1.0 هیچ کدهای وضعیت ۱xx را تعریف نمی کند، سرور ها نباید یک پاسخ ۱xx به یک سرویس HTTP / 1.0 ارسال کنند، به استثنای شرایط آزمایشی.
یک مشتری باید آماده پاسخگویی به یک یا چند پاسخ وضعیت ۱X قبل از پاسخ منظمی باشد، حتی اگر مشتری ۱۰۰ پیام (ادامه) وضعیت را انتظار نداشته باشد. پاسخ های غیرمستقیم ۱XX ممکن است توسط عامل کاربر نادیده گرفته شود.پروکسی یک فیلد “Expect: 100-continue” را اضافه می کند وقتی که یک درخواست را ارسال می کند، پس از آن نیازی به پاسخ ۱۰۰ (ادامه) پاسخ (ها) رو به جلو نیست.)

مشتری باید درخواست خود را ادامه دهد. این پاسخ موقت به منظور اطلاع دادن به مشتری است که قسمت اولیه درخواست دریافت شده است و هنوز توسط سرور رد نشده است. مشتری باید با ارسال بقیه درخواست ادامه دهد یا اگر درخواست قبلا تکمیل شده باشد، این پاسخ را نادیده بگیرد. سرور پس از تکمیل درخواست باید پاسخ نهایی را ارسال کند. در بخش ۸٫۲٫۳ برای بحث مفصل در مورد استفاده و دست زدن به این کد وضعیت نگاه کنید.

۱۰۱ پروتکل سوئیچینگ

سرور می فهمد و مایل به رعایت درخواست مشتری، از طریق فیلد سرصفحه پیام ارتقاء (بخش ۱۴٫۴۲)، برای تغییر در پروتکل برنامه استفاده شده در این اتصال است. سرور پروتکل ها را به آنهایی تعریف می کند که توسط فیلد هدر ارتقاء پاسخ بلافاصله پس از خط خالی است که ۱۰۱ پاسخ را متوقف می کند.پروتکل باید فقط زمانی فعال شود که مفید باشد. به عنوان مثال، تعویض به یک نسخه جدیدتر از HTTP، نسبت به نسخه های قدیمیتر سودمند است و تغییر در پروتکل همگام در زمان واقعی، هنگام عرضه منابعی که از چنین ویژگیهایی استفاده میکنند، سودمند است.

معرفی 10 کد خطا

تعریف خطای ۲xx

این کلاس کد وضعیتی را نشان می دهد که به  درخواست مشتری با موفقیت دریافت، درک و مورد قبول واقع شود.

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

دریافت یک نهاد مربوط به منابع درخواست شده در پاسخ ارسال می شود؛

HEAD حوزه entity header مربوط به منبع درخواست شده در پاسخ بدون هیچ پیام body ارسال می شود؛

POST یک نهاد توصیف یا حاوی نتیجه عمل؛

TRACE یک مؤسسه حاوی پیغام درخواستی که توسط سرور پایانی دریافت می شود.

دلیل نمایش پیغام۲۰۱

درخواست تکمیل شده است و منجر به ایجاد یک منبع جدید شده است. منبع جدید ایجاد شده توسط URI (ها) که در نهاد واکنش نشان داده شده است، با خاص ترین URI برای منبع داده شده توسط فیلد هدر قرار می گیرد. پاسخ باید شامل یک موجودی باشد که حاوی یک لیست از مشخصات منابع و مکان (های) که از آن کاربر یا عامل کاربر می تواند یکی از مناسب ترین را انتخاب کند. فرمت نهاد توسط نوع رسانه مشخص شده در قسمت Header Content-Type مشخص می شود. منبع اولیه قبل از بازگشت به کد وضعیت ۲۰۱ باید منبع را ایجاد کند. اگر عملیات بلافاصله انجام نشود، سرور باید به جای آن پاسخ ۲۰۲ (Accepted) را پاسخ دهد.

هدف پیغام ۲۰۲

پاسخ ۲۰۲ عمدا غیر متعهد است. هدف آن این است که اجازه دهید یک سرور درخواستی برای بعضی از فرایندهای دیگر (شاید یک فرایند دسته گرا که فقط یکبار در روز اجرا می شود) را بپذیرد بدون اینکه نیاز باشد اتصال سرور کاربر به سرور تا زمانی که فرایند تکمیل شود ادامه یابد. نهاد با این پاسخ بازگشت باید حاوی نشانه ای از وضعیت فعلی درخواست و یا اشاره گر به مانیتور وضعیت و یا برخی از برآورد زمانی که کاربر می تواند انتظار داشته باشد که درخواست انجام شود.

۲۰۳ یا اطلاعات غیر مجاز

اطلاعات متقابل برگشتی در header موجودیت مجموعه قطعی موجود در سرور اصلی نیست بلکه از یک کپی محلی یا یک شخص ثالث جمع آوری می شود. مجموعه ارائه شده ممکن است یک زیرمجموعه یا سوپرکامپیوتر از نسخه اصلی باشد. به عنوان مثال، از جمله اطلاعات حاشیه نویسی محلی در مورد منابع ممکن است منجر به برتری فراشناخت شناخته شده توسط سرور مبدأ شود. استفاده از این کد پاسخ لازم نیست و تنها زمانی مناسب است که پاسخ در غیر این صورت ۲۰۰ باشد (OK).

کد ۲۰۴

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

کد ۲۰۵ تنظیم مجدد محتوا

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

کد ۲۰۶ محتوای جزئی

سرور درخواست جزئی GET برای منبع را انجام داده است.رخواست باید شامل یک فیلد هدر ردیف (بخش ۱۴٫۳۵) باشد که نشان دهنده دامنه دلخواه است و ممکن است فیلد کلیدی Range-Range (بخش ۱۴٫۲۷) را شامل شود تا شرط درخواست باشد.

کد ۳xx ریدایرکت

این کلاس از کد وضعیت نشان می دهد که برای انجام درخواست باید اقدام بعدی باید توسط عامل کاربر انجام شود.عمل مورد نیاز می تواند توسط عامل کاربر بدون در تعامل با کاربر انجام شود و تنها اگر روش استفاده شده در درخواست دوم GET یا HEAD باشد.یک مشتری باید حلقه های هدایت بی نهایت را شناسایی کند، چون چنین حلقه ها برای هر مسیر هدایت ترافیک شبکه ایجاد می کنند.

۳۰۰ گزینه چندگانه

منابع درخواست شده مربوط به هر کدام از مجموعه ای از نمایندگی ها هستند که هر کدام دارای مکان خاص خاص خود هستند و اطلاعات مربوط به مذاکره بر اساس عامل (بخش ۱۲) ارائه می شود به طوری که کاربر (یا عامل کاربر) می تواند نماینده ترجیح داده و تغییر مسیر دهددر صورتی که درخواست HEAD نبود، پاسخ باید حاوی یک لیست از ویژگی های منابع و مکان (ها) باشد که کاربر یا عامل کاربر می تواند یکی از مناسب ترین را انتخاب کندفرمت نهاد توسط نوع رسانه مشخص شده در قسمت Header Content Type مشخص شده است.

۳۰۱ به طور دائم منتقل شد

منابع درخواست شده دارای یک URl دائمی جدید هستند و هر گونه مراجعه به این منبع باید از یکی از URl های بازگشتی استفاده کند.مشتریان با قابلیت ویرایش لینک ها باید به صورت خودکار منابع را به درخواست-URl به یک یا چند منبع جدید که توسط سرور بازگردانده می شوند، مجددا پیوند دهند.این پاسخ قابل ذخیره است، مگر اینکه در غیر این صورت مشخص شود.

۳۰۲ یافت شد

منبع درخواست شده به طور موقت تحت URI متفاوت است. از آنجا که تغییر مسیر ممکن است در موارد خاص تغییر کند، مشتری باید همچنان از Request-URI برای درخواست های آینده استفاده کند. این پاسخ تنها در صورت کشیدن در صورت عدم نمایش Cache-Control یا Expire field header قابل ذخیره است.URI موقت باید توسط فیلد موقعیت در پاسخ داده شود. به غیر از این که متد درخواست HEAD باشد، واحد پاسخ باید حاوی یک یادداشت کوتاه با متن با یک لینک به URI جدید (ها) باشد.

۳۰۳ های دیگر

پاسخ به درخواست می تواند تحت یک URI متفاوت پیدا شود و باید با استفاده از روش GET در آن منبع بازیابی شود.این روش عمدتا برای اجازه دادن به خروجی یک اسکریپت فعال POST برای هدایت عامل کاربر به یک منبع انتخاب شده است. URI جدید یک منبع جایگزین برای منبع درخواست شده اولیه نیست.پاسخ ۳۰۳ باید ذخیره شود، اما پاسخ به درخواست دوم (هدایت شده) ممکن است

قابل ذخیره باشد.

۳۰۴ اصلاح نشده است

اگر مشتری یک درخواست GET مشروط انجام داده و دسترسی مجاز است، اما سند اصلاح نشده است، سرور باید با این کد وضعیت پاسخ دهد.پاسخ ۳۰۴ MUST NOT contain message body، و بنابراین همیشه با خط اول خالی بعد از زمینه هدر خاتمه می یابد.

۳۰۵ استفاده از پروکسی

منابع درخواست شده باید از طریق پروکسی که توسط فیلد موقعیت ارسال شده است دسترسی پیدا کند.فیلد Location به URI پروکسی می دهد.انتظار می رود گیرنده این درخواست تنها از طریق پروکسی را تکرار کند.۳۰۵ پاسخ فقط باید توسط سرورهای مبدا ایجاد شود.

۳۰۶ (استفاده نشده)

کد وضعیت ۳۰۶ در یک نسخه قبلی از مشخصات استفاده شده است، دیگر استفاده نمی شود و کد رزرو شده است.

۳۰۷ تغییر مسیر موقت

منبع درخواست شده به طور موقت تحت URI متفاوت است.از آنجا که تغییر مسیر ممکن است به صورت مناسبی انجام شود، مشتری باید همچنان از Request-URI برای درخواست های آینده استفاده کند.از آنجا که تغییر مسیر ممکن است به صورت مناسبی انجام شود، مشتری باید همچنان از Request-URI برای درخواست های آینده استفاده کند.این پاسخ تنها در صورت کشیدن در صورت عدم نمایش Cache-Control یا Expire field header قابل ذخیره است.

خطای مشتری ۴xx

کلاس ۴xx کد وضعیت برای مواردی است که مشتری به نظر می رسد اشتباه است.به استثنای پاسخ دادن به یک درخواست HEAD، سرور باید یک موجودیت شامل توضیح وضعیت خطا و اینکه آیا آن یک وضعیت موقت یا دائمی است را شامل می شود.این کدهای وضعیت برای هر روش درخواست قابل اجرا هستند.نماینده های کاربر باید هر موجودیت موجود را به کاربر نمایش دهند.

۴۰۰ درخواست بد

درخواست توسط سرور به دلیل نحو نادرست انجام نمی شود.مشتری نباید درخواست را بدون تغییر تکرار کند.پ

۴۰۱ غیر مجاز

درخواست نیاز به تأیید هویت کاربر دارد.پاسخ باید یک فیلد هدر WWW-Authenticate (بخش ۱۴٫۴۷) شامل یک چالش قابل اجرا در مورد منبع درخواست شده باشد.مشتری می تواند درخواست را با یک فیلد هدر مناسب مجوز (بخش ۱۴٫۸) تکرار کند.اگر درخواست قبلا شامل اعتبارنامه مجوز باشد، پاسخ ۴۰۱ نشان می دهد که مجوز برای این اعتبار ها رد شده است.اگر پاسخ ۴۰۱ دارای چالش مشابهی با پاسخ قبلی باشد و عامل کاربر قبلا حداقل یک بار احراز هویت را امتحان کرده است، سپس کاربر باید یک موجودیت را که در پاسخ داده شده است ارائه دهد، زیرا این موجودیت ممکن است شامل اطلاعات مربوط به تشخیص باشد.احراز هویت دسترسی HTTP در “HTTP Authentication: Basic و Digest Authentication Access”

۴۰۲ پرداخت مورد نیاز است

این کد برای استفاده آینده محفوظ است.

۴۰۳ ممنوع است

سرور درخواست را درک کرد اما از انجام آن اجتناب کرد.مجوز کمک نمی کند و درخواست نباید تکرار شود.اگر روش درخواست HEAD نبود و سرور مایل بود که علت عدم انجام این درخواست را بداند، باید دلیل رد شدن در واحد را توضیح دهد.اگر سرور نمی خواهد این اطلاعات را در اختیار مشتری قرار دهد، به جای کد ۴۰۴ (Not Found) استفاده می شود.

۴۰۴ پیدا نشد

سرور هیچ چیزی را مطابق با Request-URI پیدا نکرده است.هیچ نشانه ای از اینکه آیا وضعیت موقت یا دائمی است یا خیر مشخص نیست.کد وضعیت ۴۱۰ (Gone) باید استفاده شود اگر سرور از طریق برخی از مکانیزم های قابل تنظیم داخلی می داند که یک منبع قدیمی دائمی در دسترس نیست و هیچ آدرس حمل و نقل ندارد.این کد وضعیت معمولا هنگامی استفاده می شود که سرور نمی خواهد دقیقا مشخص کند که چرا درخواست رد شده است یا زمانی که هیچ پاسخ دیگری قابل اجرا نیست.

روش ۴۰۵ غیرقانونی است

روش مشخص شده در Request-Line برای منبع شناسایی شده توسط Request-URI مجاز نیست.پاسخ باید حاوی هدر اجازه (حاوی لیستی از روشهای معتبر برای منابع درخواست شده) باشد.

۴۰۶ قابل قبول نیست

منبع شناسایی شده توسط این درخواست تنها قادر به تولید واحدهای پاسخ است که دارای ویژگی های محتوا هستند که مطابق با هدر های پذیرش فرستاده شده در درخواست پذیرفته نمی شوند.

اگر این درخواست HEAD نبود، پاسخ باید شامل یک موجودی با لیستی از ویژگی های موجود موجود و مکان (ها) باشد که از آن کاربر یا عامل کاربر می تواند یکی از مناسب ترین را انتخاب کند.فرمت نهاد توسط نوع رسانه مشخص شده در قسمت Header Content-Type مشخص می شود.بسته به فرمت و قابلیت های عامل کاربر، انتخاب مناسب ترین انتخاب ممکن است به صورت خودکار انجام شود.با این حال، این مشخصات هیچ استانداردی برای چنین انتخاب اتوماتیک تعریف نمی کند.

۴۰۷ تأیید هویت پروکسی مورد نیاز است

این کد شبیه به ۴۰۱ (غیر مجاز) است، اما نشان می دهد که ابتدا باید مشتری با پروکسی خود را تأیید کند. پروکسی باید یک فیلد هدر Proxy-Authenticate (بخش ۱۴٫۳۳) را که حاوی یک چالش قابل اجرا برای پروکسی برای منبع درخواست شده است، بازگرداند. مشتری می تواند درخواست را با یک فیلد هدر مناسب پروکسی-مجوز (بخش ۱۴٫۳۴) تکرار کند. احراز هویت دسترسی HTTP در “HTTP Authentication: Basic و Digest Authentication Access”

۴۰۸ درخواست تاخیر

مشتری در زمان آماده سازی سرور صبر کرد درخواستی نداشته باشد. مشتری می تواند درخواست را بدون تغییر در هر زمان دیگری تکرار کند.

۴۰۹ اختلاف

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

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

۴۱۰ رفته

منابع درخواست شده دیگر در سرور موجود نیست و آدرس حمل و نقل شناخته شده نیست.انتظار می رود که این شرایط دائمی در نظر گرفته شود.مشتریان با توانایی ویرایش لینک باید مراجع به Request-URI پس از تایید کاربر حذف شوند.اگر سرور نمی داند یا هیچ تسهیلاتی برای تعیین وجود ندارد یا این شرایط دائمی است یا نه، کد ۴۰۴ (نهفته) باید به جای آن استفاده شود.این پاسخ قابل ذخیره است، مگر اینکه در غیر این صورت مشخص شود.

طول ۴۱۱ مورد نیاز است

سرور از قبول درخواست بدون یک Content-Length تعریف می کند.مشتری می تواند درخواست را تکرار کند اگر یک فیلد هدر معتبر Content-Length حاوی طول پیام body در پیام درخواست اضافه می کند.

۴۱۲ پیش شرط شکست خورد

پیش شرطی که در یک یا چند فیلد header درخواست داده می شود که در هنگام آزمایش در سرور مورد کاذب قرار گرفته است.این کد پاسخ به مشتری اجازه می دهد پیش شرط هایی را در مورد اطلاعات فراشناخت منابع (داده های فیلد هدر) قرار دهد و از این طریق روش درخواست شده را به یک منبع دیگر غیر از آنچه که در نظر گرفته شده است، جلوگیری می کند.

۴۱۳ درخواست موجودیت بیش از اندازه

سرور از پردازش یک درخواست خودداری می کند زیرا موجودیت درخواست بزرگتر از سرور است که مایل یا قادر به پردازش است.سرور می تواند اتصال را متوقف کند تا مشتری از ادامه درخواست خود جلوگیری کند.اگر شرایط موقت باشد، سرور باید یک فیلد هدر Retry- After را نشان دهد تا نشان دهد که آن موقع است و پس از چه زمانی مشتری می تواند دوباره امتحان کند.

۴۱۴ درخواست URI بیش از حد طولانی است

سرور درخواست سرویس را رد می کند چون Request-URI طولانی تر از سرور است که مایل به تفسیر است.این وضعیت نادر تنها زمانی رخ می دهد که یک مشتری نادرست یک درخواست POST را به یک درخواست GET با اطلاعات پرس و جو طولانی تبدیل کند، زمانی که مشتری به یک سیاهچاله (redirection) به URI رفته (به عنوان مثال یک پیشوند URI هدایت شده که به یک پسوند از خود) و یا زمانی که سرور تحت حمله یک مشتری است که تلاش می کند از سوراخ های امنیتی موجود در برخی از سرور ها با استفاده از بافر های ثابت طولی برای خواندن یا دستکاری درخواست-URI استفاده کند.

۴۱۵ نوع رسانه غیربهداشتی

سرور از ارائه درخواست سرویس اجتناب می کند زیرا موجودیت درخواست در فرمت نیست که توسط منبع درخواست شده برای روش درخواست شده پشتیبانی نمی شود.

۴۱۶ محدوده درخواستی قابل قبول نیست

یک سرور باید یک پاسخ با این کد وضعیت را پاسخ دهد اگر یک درخواست حاوی فیلد header request-header (بخش ۱۴٫۳۵) باشد و هیچ کدام از مقادیر مشخص کننده در این فیلد همسطح فعلی منابع انتخاب شده نیست و درخواست(برای محدوده بایت، این بدان معنی است که اولین بایت تمام مقادیر بایت محدوده تنظیم شده بیشتر از طول فعلی منبع انتخاب شده است.)

۴۱۷ انتظار نداشت

انتظار می رود که در قسمت Expect request-header داده شده (به بخش ۱۴٫۲۰ مراجعه شود) توسط این سرور پاسخ نداشته باشد، یا اگر سرور یک پروکسی باشد، سرور دارای شواهد غیر قابل ملاحظه ای است که درخواست توسط سرور بعدی بعد.

خطای سرور ۵xx

کدهای وضعیت پاسخ که با رقم «۵» آغاز می شوند، نشان دهنده مواردی است که سرور آگاه است که آن را نادرست یا ناتوان از انجام درخواست است.به استثنای پاسخ دادن به یک درخواست HEAD، سرور باید یک موجودیت شامل توضیح وضعیت خطا و اینکه آیا آن یک وضعیت موقت یا دائمی است را شامل می شود.نماینده های کاربر باید هر موجودیت موجود را به کاربر نمایش دهند.این کدهای پاسخ برای هر روش درخواست قابل اجرا هستند.

۵۰۰ خطا سرور داخلی

سرور با یک وضعیت غیر منتظره مواجه شد که از اجرای آن جلوگیری کرد.

۵۰۱ پیاده سازی نشده است

سرور از قابلیت های مورد نیاز برای اجرای درخواست پشتیبانی نمی کند.این پاسخ مناسب زمانی است که سرور روش درخواست را شناسایی نمی کند و قادر به پشتیبانی از هر منبع نیست.

۵۰۲ بد گیتوی

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

۵۰۳ خدمات در دسترس نیست

سرور در حال حاضر قادر به پردازش درخواست به دلیل اضافه بار موقت یا نگهداری سرور نیست.نکته این است که این شرایط موقت است که بعد از تاخیر کاهش می یابد.اگر شناخته شده باشد، مدت تاخیر ممکن است در سرآیند Retry-After نشان داده شود.اگر هیچ پاسخ Retry-After داده نشود، مشتری باید پاسخ را به عنوان پاسخ ۵۰۰ پاسخ دهد.

گذرگاه دروازه ۵۰۴

سرور، در حالی که به عنوان یک دروازه یا پروکسی عمل می کرد، پاسخی به موقع از سرور بالادست مشخص شده توسط URI (به عنوان مثال HTTP، FTP، LDAP) یا بعضی از سرور های کمکی دیگر (مانند DNS) که نیاز به دسترسی در تلاش برای تکمیل درخواست.

نسخه ۵۰۵ HTTP پشتیبانی نمی شود

سرور پروتکل پروتکل HTTP که در پیام درخواست استفاده می شود را پشتیبانی نمی کند یا از پشتیبانی نمی کند.سرور نشان می دهد که نمی تواند یا مایل به تکمیل درخواست با استفاده از همان نسخه اصلی به عنوان مشتری، همانطور که در بخش ۳٫۱ توضیح داده شده است، غیر از این پیام خطا.پاسخ باید شامل یک نهاد باشد که توصیف می کند که چرا این نسخه پشتیبانی نمی شود و چه پروتکل های دیگری توسط آن سرور پشتیبانی می شود.

طراحی سایت