2016-03-23 11 views
-1

Bu çok basit sorular olabilir. Ama adrese çalışıyorum soruları Websunucusu HTTP İstekleri işlemek için var, Bu yüzden kullanıcı isteyen isteği geri dönüyor HTTP verbs böyle GET ile vb GET, POSTWeb sunucusu nasıl HTTP POST'u kullanır

olarak ele onun tamamen yetenekli olmasıdır. Böylece web sunucusu kaynağı kullanıcıya geri döndürebilir. Ancak POST söz konusu olduğunda, statik sonuç iade edilemez. POST'un dinamik olması gerekiyordu. Bu durumda, bir uygulama sunucusunun yardımı olmadan, web sunucusu tek başına ciddi bir posta isteği nasıl yapar. Çünkü sonuç, web sunucusunun sağlayamadığı dinamik bir şekilde üretilmelidir. Ancak, web sunucusunun http protokolünü desteklemek için temel amacı. Orada da HTTP POST'u destekleyebilmelidir. Bu şüphe açıklığa kavuşturmak için biraz ışık tutabilir mi?

+0

Ne sorduğunuzu anlatın, Sunucunun bir POST isteği için verdiği yanıt herhangi bir şey olabilir ... –

+0

Sorunun ne olduğu hakkında hiçbir fikrim yok :) Bize bir ipucu ver. Bir web sunucusunun POST taleplerini takdir ediyor ve onlara hizmet etmiyor musunuz? Başlamak için [wikipedia] (https://en.wikipedia.org/wiki/POST_ (HTTP)) gibi bir şey deneyin. – Egg

+0

İndeks.php'ye veri gönderirseniz, index.php posta verilerini alır ve onunla ne istediğini yapabilir. Websever, http bağlantısını ele aldı ve verileri teslim etti. – AbraCadaver

cevap

1

HTTP sunucusuna bağlıdır. Python'un SimpleHTTPServer/http.server, yalnızca statik dosyaları işlemek için tasarlanmıştır. GET ve HEAD'dan başka bir şey işlemezler ve 501 Unsupported method ile yanıt verirler. Eğer nginx başlatın ve bir CGI/FastCGI/uWSGI işleyicisi belirtmezseniz

, sen POST için 403 Forbidden hariç HEAD/GET dışındaki çoğu yöntemleri için 405 Not Allowed alırsınız. Son olarak, bazı sunucular GET'a yanıt verecekleri şekilde sessizce (ve yanlış olarak) yanıt verebilirler.

+0

Tanrıya şükür, benim sorum var. Neden birinin neden sorumu seçtiğini bilmiyorum – KItis