यदि आप थोड़ा फ्रंट-एंड प्रोजेक्ट पर काम कर रहे हैं और इसे स्थानीय रूप से परीक्षण करना चाहते हैं, तो आप आमतौर पर इसे वेब ब्राउज़र में अपनी स्थानीय निर्देशिका को इंगित करके खोलेंगे, उदाहरण के लिए फ़ाइल में प्रवेश: अपने URL बार में .html करें। हालाँकि, यदि आपकी साइट संसाधनों को लोड करने का प्रयास कर रही है, भले ही वे आपके स्थानीय निर्देशिका में रखे हों, तो आप इस तरह की चेतावनी देख सकते हैं:
XMLHttpRequest फ़ाइल लोड नहीं कर सकता: ///home/erick/mysuperproject/mylibrary.js। क्रॉस मूल अनुरोध केवल HTTP के लिए समर्थित हैं।
क्रोम और अन्य आधुनिक ब्राउज़रों ने क्रॉस ओरिजिन रिक्वेस्ट के लिए सुरक्षा प्रतिबंधों को लागू किया है, जिसका अर्थ है कि आप फ़ाइल के माध्यम से कुछ भी लोड नहीं कर सकते हैं: ///, आपको हर समय http: // प्रोटोकॉल का उपयोग करने की आवश्यकता है, यहां तक कि स्थानीय रूप से समान मूल नीतियां भी। उस के रूप में सरल, आपको अपनी परियोजना को चलाने के लिए एक वेबसर्वर माउंट करने की आवश्यकता होगी।
यह दुनिया का अंत नहीं है और वहाँ कई समाधान हैं, जिसमें अच्छी पुरानी अपाचे (VirtualHosts के साथ यदि आप कई अन्य परियोजनाएं चला रहे हैं), नोड। एक्सप्रेस के साथ, एक रूबी सर्वर, आदि या बस अपने संशोधन। ब्राउज़र सेटिंग्स।
हालांकि आलसी लोगों के लिए एक सरल और हल्का समाधान है। आप पायथन के सिंपलएचटीपीएसर्वर का उपयोग कर सकते हैं। यह पहले से ही अजगर के साथ बंडल आता है इसलिए आपको कुछ भी स्थापित या कॉन्फ़िगर करने की आवश्यकता नहीं है!
उदाहरण के लिए, अपनी परियोजना निर्देशिका के लिए सीडी
1 cd / home / erick / mysuperproject और फिर बस उपयोग करें
1 python -m SimpleHTTPServer और यह बात है, आपको यह संदेश आपके टर्मिनल में दिखाई देगा
1 0.0.0.0 पोर्ट 8000 पर HTTP http://0.0.0.0:8000परोस रहा है ... तो अब आप अपने ब्राउज़र पर वापस जा सकते हैं और अपनी सभी निर्देशिका फ़ाइलों के साथ वहां जा सकते हैं। आप पोर्ट और अन्य चीजों को कॉन्फ़िगर कर सकते हैं, बस प्रलेखन देखें। लेकिन यह बस चाल मेरे लिए काम करता है जब मैं एक नई लाइब्रेरी का परीक्षण करने या एक नए विचार का काम करने की जल्दी में हूं।
वहाँ तुम जाओ, खुश कोडिंग!
EDIT:
पायथन 3+ में, SimpleHTTPServer को http.server के साथ बदल दिया गया है। इसलिए पायथन 3.3 में, उदाहरण के लिए, निम्न कमांड समतुल्य है:
python -m http.server 8000