मुझे सी। में एक सरल HTTP सर्वर बनाने की आवश्यकता है। कोई मार्गदर्शन? लिंक? नमूने?
मुझे सी। में एक सरल HTTP सर्वर बनाने की आवश्यकता है। कोई मार्गदर्शन? लिंक? नमूने?
जवाबों:
मेरा सुझाव है कि आप छोटे httpd पर एक नज़र डालें । यदि आप इसे खरोंच से लिखना चाहते हैं, तो आप RFC 2616 को अच्छी तरह से पढ़ना चाहेंगे । उपयोग बीएसडी कुर्सियां एक बहुत कम स्तर पर नेटवर्क पर पहुंचने के।
tiny httpd
यहाँ भी github पर है: github.com/larryhe/tinyhttpd
मेरा सुझाव है कि आप इस पर एक नज़र डालें: लेखन और ग्राहकों के लिए एक व्यावहारिक गाइड
वृद्धिशील चरणों में आपको क्या लागू करना है:
एक HTTP सर्वर वैचारिक रूप से सरल है:
यह इस बात पर निर्भर करता है कि आप कितना HTTP का समर्थन करना चाहते हैं - POST कुछ अधिक जटिल, स्क्रिप्ट, कई अनुरोधों को संभालने आदि के आधार पर अधिक कठिन हो जाता है।
लेकिन आधार बहुत सरल है।
Nweb (निगेल के वेब सर्वर) को देखें, "सी कोड कोड की केवल 200 लाइनों के साथ एक छोटा, सुरक्षित वेब सर्वर [...]:
https://drive.google.com/file/d/0B3msld7qnNOhN1NXaFIwSFU2Mjg/view?usp=sharing
http://www.ibm.com/developerworks/systems/library-es-nweb/
लेख में स्यूडोकोड, स्पष्टीकरण और टिप्पणियां शामिल हैं।
EDIT: IBM का लिंक मर गया। मैंने वेबपेज के एक पीडीएफ को गूगल ड्राइव में सहेजा है। यहाँ कोड डाउनलोड है:
https://drive.google.com/file/d/0B3msld7qnNOhSGZGdDJJMmY0VHM/view?usp=sharing
@ akushagarwal ने कुछ बदलाव किए हैं और GitHub पर अपना संस्करण अपलोड किया है: https://github.com/ankushagarwal/nweb
मैंने अपना स्वयं का लिखा है जो आप उपयोग कर सकते हैं। यह एक काम करता है sqlite, धागा सुरक्षित है और UNIX के लिए C ++ में है।
आपको इसे अलग से लेने और सी संगत कोड का उपयोग करने में सक्षम होना चाहिए।
HTTP कल्पना और Firebug जब मैं के लिए यह करना ही था मेरे लिए बहुत उपयोगी थे मेरी होमवर्क।
आप के साथ शुभकामनाएँ। :)
मेरा सुझाव है कि स्रोत को lighthttpd की तरह कुछ देखना चाहिए ।
मैनिंग से http://www.manning.com/hethmon/ - "इलस्ट्रेटेड गाइड टू HTTP बाय पॉल एस हेथमन" एचटीटीपी प्रोटोकॉल सीखने के लिए एक बहुत ही अच्छी किताब है और इसे लागू करने वाले / इसे विस्तार देने वाले किसी व्यक्ति के लिए बहुत उपयोगी होगी।
अधिक प्रतिक्रियाओं के साथ एक डुप्लिकेट है ।
एक उम्मीदवार अभी तक का उल्लेख नहीं किया है spserver ।