HTTP სტატუსის კოდები: განსხვავება გადახედვებს შორის

მასალა ვიკიპედიიდან — თავისუფალი ენციკლოპედია
[შეუმოწმებელი ვერსია][შეუმოწმებელი ვერსია]
შიგთავსი ამოიშალა შიგთავსი დაემატა
ხაზი 44: ხაზი 44:


== 3xx (გადამისამართება) ==
== 3xx (გადამისამართება) ==
კლიენტმა უნდა შეასრულოს დამატებითი მოქმედებები, მოთხოვნის დასასრულებლად. ამ დამატებითი მოქმედების შესრულება შესაძლებელია მოხდეს ავტომატურად პროგრამის მიერ, მხოლოდ იმ შემთხვევაში თუ გამოყენებულია POST ან HEAD მეთოდები. პროგრამამ არ უნდა შეასრულოს მიჯრით ხუთზე მეტი გადამისამართება რადგან ხშირად ეს აღიქმება როგორც უსასრულოდ ბევრი გადამისამართების ციკლი.


=== 300 Multiple Choices ===
=== 300 Multiple Choices ===
განსაზღვრავს რომ რესურსზე წვდომა რამდენიმა განსხვავებული პარამეტრით შეიძლება. მაგალითად განსხვავებული ფორმატის ვიდეო ფაილები, განსხვავებული გაფართოების დოკუმენტები და ა.შ.

=== 301 Moved Permanently ===
=== 301 Moved Permanently ===
განსაზღვრავს რომ მოცემული მისამართი სამუდამოდ შეცვლილია მოწოდებული მისამართით.

=== 302 Found ===
=== 302 Found ===
მოთხოვნილი დოკუმენტი დროებით სხვა მისამართზეა ხელმისაწვდომი, რომელიც მითითებულია Location ველში.

=== 303 See Other (since HTTP/1.1) ===
=== 303 See Other (since HTTP/1.1) ===
მოთხოვნილი დოკუმენტის გამოძახება უნდა მოხდეს Location ველში მითითებული მისამართიდან, მხოლოდ აუცილებლად GET მეთოდით, მიუხედავად იმისა მანამდე რა მეთოდი იყო გამოყენებული.

=== 304 Not Modified ===
=== 304 Not Modified ===
დოკუმენტი არ შეცვლილა ბოლო მოთხოვნის შემდეგ. როგორც წესი კლიენტი აგხავნის If-Modified-Since დროით პარამეტრს, რომელიც გამოიყენება ათვლის წერტილად იმის დასადგენად შეიცვალა თუ არა დოკუმენტი ამ დროის შემდეგ. გამოიყენება რათა დაიზოგოს ტრეფიკი და აღარ მოხდეს უცვლელი ფაილების ხელმეორედ ჩამოწერა სერვერიდან.

=== 305 Use Proxy (since HTTP/1.1) ===
=== 305 Use Proxy (since HTTP/1.1) ===
მოთხოვნილ მისამართზე წვდომა შესაძლებელია მოხდეს მხოლოდ პროქსი სერვერის გამოყენებით.

=== 306 Switch Proxy ===
=== 306 Switch Proxy ===
აღარ გამოიყენება. მიუთითებდა, რომ მხოლოდ კონკრეტული პროქსი სერვერების გამოყენება იყო შესაძლებელი.

=== 307 Temporary Redirect (since HTTP/1.1) ===
=== 307 Temporary Redirect (since HTTP/1.1) ===
ამ შემთხვევაში მოთხოვნა უნდა განმეორდეს სხვა მისამართზე, რომელიც სერვერიდან იქნება მოწოდებული, თუმცა მომავალში ისე იგივე მისამართით უნდა ისარგებლოთ.

=== 308 Permanent Redirect (approved as experimental RFC]) ===
=== 308 Permanent Redirect (approved as experimental RFC]) ===
აღნიშნული და ყველა მომავალი მოთხოვნები უნდა განხორციელდეს მოწოდებულ მისამართზე.


== 4xx (შეცდომა კლიენტის მხარეზე) ==
== 4xx (შეცდომა კლიენტის მხარეზე) ==

08:33, 26 ნოემბერი 2012-ის ვერსია

HTTP სტატუსის კოდი (HTTP response status code) - წარმოადგენს სერვერიდან მიღებული პასუხის პირველ სტრიქონს, როდესაც მოთხოვნა შესრულებულია HTTP პროტოკოლის მეშვეობით. სერვერიდან დაბრუნებული პასუხის პირველი სტრიქონის პირველი რიცხვი აღნიშნავს თუ რა მდგომარეობაში ბრუნდება პასუხი, რის საფუძველზეც ვებ ბრაუზერი, ან სხვა პროგრამა რისი საშუალებითაც მოხდა მოთხოვნის გაგზავნა, ასრულებს შესაბამის მოქმედებას. აღნიშნული კოდები წარმოადგენს საერთაშორისო სტანდარტს და აღწერილია შესაბამის დოკუმენტში RFC. რიცხვით მნიშვნელობასთან ერთად სერვერიდან ბრუნდება ასევე სიტყვიერი განმარტებაც, რომელიც ასევე სტანდარტს წარმოადგენს, თუმცა საბოლოო მომხმარებელთათვის მათი ჩვენება ხშირად სხვადასხვა ფორმით ხდება.

1xx (ინფორმაციული)

აღნიშნავს რომ მოთხოვნა მიღებულია და მიმდინარეობს დამუშავება.

100 Continue

ნიშნავს რომ სერვერმა მიიღო მოთხოვნის სათაური და კლიენტმა უნდა გააგრძელოს მოთხოვნის დანარჩენი ნაწილის მიწოდება (იმ შემთხვევაში თუ დამატებითი ნაწილის მიწეოდება საჭიროა, მაგალითად POST მოთხოვნის დროს). ამ კოდის არსებობა განპირობებულია იმით, რომ როდესაც დიდი მოცულობის ინფორმაციის გაგზავნაა საჭირო სერვერზე, ჯერ უმჯობესია შემოწმდეს ახერხებს თუ არა საერთოდ სერვერი ამ ინფორმაციის მიღებას. ამ შემთხვევაში კლიენტმა ჯერ უნდა გაგზავნოს Expect: 100-continue სატაური მოთხოვნასთან ერთად და დაელოდოს პასუხს, რომელიც შეიძლება იყოს 100 Continue თუ სერვერი ახერხებს დანარჩენი მოთხოვნის მიღებას ან 417 Expectation Failed საწინააღმდეგო შემთხვევაში, რა დროსაც კლიენტმა უნდა შეწყვიტოს მოთხოვნის გაგზავნა.

101 Switching Protocols

იგზავნება მაშინ როდესაც კლიენტი ითხოვს სერვერისგან პროტოკოლის შეცვლას და სერვერი ინფორმირებულია ამის შესახებ.

102 Processing (WebDAV; RFC 2518)

როდესაც იგზავნება დიდი მოცულობის მონაცემები, რის დამუშავებასაც დიდი დრო სჭირდება სერვერზე, ეს კოდი ბრუნდება სერვერიდან რომელიც აცნობებს კლიენტს რომ მიმდინარეობს მუშაობა და უნდა დაელოდოს შესაბამის პასუხს.

2xx (წარმატება)

ამ ტიპის კოდი ბრუნდება მაშინ, როდესაც სერვერმა მიიღო კლიენტის მოთხოვნა და წარმატებით დაამუშავა, პრობლემების გარეშე.

200 OK

სტანდარტული კოდი HTTP მოთხოვნის წარმატებით დასრულების შემთხვევაში.

201 Created

ბრუნდება მაშინ როდესაც წარმატებით შესრულებული მოთხოვნის შედეგად მოხდა ახალი რესურსის გამოყოფა.

202 Accepted

ბრუნდება მაშინ, როდესაც მოთხოვნა მიღებული იქნა სერვერის მიერ მაგრამ დამუშავება ჯერ არაა დასრულებული. საბოლოოდ მოთხოვნა შეიძლება დასრულდეს ან უარყოფილი იქნას სერვერის მიერ.

203 Non-Authoritative Information (since HTTP/1.1)

სერვერმა წარმატებით მიიღო და დაამუშავა მოთხოვნა მაგრამ შედეგი შესაძლოა სხვა წყაროდან ბრუნდებოდეს.

204 No Content

სერვერმა წარმატებით მიიღო და დაამუშავა მოთხოვნა, მაგრამ პასუხად არაფერს არ აბრუნებს.

205 Reset Content

სერვერმა წარმატებით მიიღო და დაამუშავა მოთხოვნა, მაგრამ პასუხად არაფერს არ აბრუნებს.

206 Partial Content

სერვერიდან ხდება მხოლოდ პასუხის გარკვეული ნაწილის მოწოდება. ეს სტატუსი გამოიყენება ისეთი, მაგალითად, მაშინ როდესაც სერვერიდან ხდება ფაილის გადმოწერა და გადმოწერის შეწყვეტის შემთხვევაში შესაძლებელი უნდა იყოს პროცესის გაგრძელება, ან საჭიროა ამ ფაილის დაყოფა და რამდენიმე ნაწილად გადმოწერა.

207 Multi-Status (WebDAV; RFC 4918)

შეტყობინების ძირითადი ნაწილი რომელიც მოწოდებული იქნება წარმოადგენს XML-ს. ასევე შესაძლოა დაბრუნდეს რამდენიმე ქვე სტატუსები იმის მიხედვით რამდენი მოთხოვნა იქნა გაგზავნილი სერვერზე.

3xx (გადამისამართება)

კლიენტმა უნდა შეასრულოს დამატებითი მოქმედებები, მოთხოვნის დასასრულებლად. ამ დამატებითი მოქმედების შესრულება შესაძლებელია მოხდეს ავტომატურად პროგრამის მიერ, მხოლოდ იმ შემთხვევაში თუ გამოყენებულია POST ან HEAD მეთოდები. პროგრამამ არ უნდა შეასრულოს მიჯრით ხუთზე მეტი გადამისამართება რადგან ხშირად ეს აღიქმება როგორც უსასრულოდ ბევრი გადამისამართების ციკლი.

300 Multiple Choices

განსაზღვრავს რომ რესურსზე წვდომა რამდენიმა განსხვავებული პარამეტრით შეიძლება. მაგალითად განსხვავებული ფორმატის ვიდეო ფაილები, განსხვავებული გაფართოების დოკუმენტები და ა.შ.

301 Moved Permanently

განსაზღვრავს რომ მოცემული მისამართი სამუდამოდ შეცვლილია მოწოდებული მისამართით.

302 Found

მოთხოვნილი დოკუმენტი დროებით სხვა მისამართზეა ხელმისაწვდომი, რომელიც მითითებულია Location ველში.

303 See Other (since HTTP/1.1)

მოთხოვნილი დოკუმენტის გამოძახება უნდა მოხდეს Location ველში მითითებული მისამართიდან, მხოლოდ აუცილებლად GET მეთოდით, მიუხედავად იმისა მანამდე რა მეთოდი იყო გამოყენებული.

304 Not Modified

დოკუმენტი არ შეცვლილა ბოლო მოთხოვნის შემდეგ. როგორც წესი კლიენტი აგხავნის If-Modified-Since დროით პარამეტრს, რომელიც გამოიყენება ათვლის წერტილად იმის დასადგენად შეიცვალა თუ არა დოკუმენტი ამ დროის შემდეგ. გამოიყენება რათა დაიზოგოს ტრეფიკი და აღარ მოხდეს უცვლელი ფაილების ხელმეორედ ჩამოწერა სერვერიდან.

305 Use Proxy (since HTTP/1.1)

მოთხოვნილ მისამართზე წვდომა შესაძლებელია მოხდეს მხოლოდ პროქსი სერვერის გამოყენებით.

306 Switch Proxy

აღარ გამოიყენება. მიუთითებდა, რომ მხოლოდ კონკრეტული პროქსი სერვერების გამოყენება იყო შესაძლებელი.

307 Temporary Redirect (since HTTP/1.1)

ამ შემთხვევაში მოთხოვნა უნდა განმეორდეს სხვა მისამართზე, რომელიც სერვერიდან იქნება მოწოდებული, თუმცა მომავალში ისე იგივე მისამართით უნდა ისარგებლოთ.

308 Permanent Redirect (approved as experimental RFC])

აღნიშნული და ყველა მომავალი მოთხოვნები უნდა განხორციელდეს მოწოდებულ მისამართზე.

4xx (შეცდომა კლიენტის მხარეზე)

400 Bad Request

401 Unauthorized

402 Payment Required

403 Forbidden

404 Not Found

405 Method Not Allowed

406 Not Acceptable

407 Proxy Authentication Required

408 Request Timeout

409 Conflict

410 Gone

411 Length Required

412 Precondition Failed

413 Request Entity Too Large

414 Request-URI Too Long

415 Unsupported Media Type

416 Requested Range Not Satisfiable

417 Expectation Failed

418 I'm a teapot (RFC 2324)

420 Enhance Your Calm (Twitter)

422 Unprocessable Entity (WebDAV; RFC 4918)

423 Locked (WebDAV; RFC 4918)

424 Failed Dependency (WebDAV; RFC 4918)

424 Method Failure (WebDAV)

425 Unordered Collection (Internet draft)

426 Upgrade Required (RFC 2817)

428 Precondition Required (RFC 6585)

429 Too Many Requests (RFC 6585)

431 Request Header Fields Too Large (RFC 6585)

444 No Response (Nginx)

449 Retry With (Microsoft)

450 Blocked by Windows Parental Controls (Microsoft)

451 Unavailable For Legal Reasons (Internet draft)

494 Request Header Too Large (Nginx)

495 Cert Error (Nginx)

496 No Cert (Nginx)

497 HTTP to HTTPS (Nginx)

499 Client Closed Request (Nginx)

5xx შეცდომა სერვერზე

500 Internal Server Error

501 Not Implemented

502 Bad Gateway

503 Service Unavailable

504 Gateway Timeout

505 HTTP Version Not Supported

506 Variant Also Negotiates (RFC 2295)

507 Insufficient Storage (WebDAV; RFC 4918)

508 Loop Detected (WebDAV; RFC 5842)

509 Bandwidth Limit Exceeded (Apache bw/limited extension)

510 Not Extended (RFC 2774)

511 Network Authentication Required (RFC 6585)

598 Network read timeout error (Unknown)

599 Network connect timeout error (Unknown)