2016-04-21 10 views
5

मैंने Google क्लाउड इंजन (जीसीई) पर इस link के माध्यम से एक MEAN स्टैक स्थापित किया है।ब्राउज़र के माध्यम से Google क्लाउड इंजन इंस्टेंस के आईपी पते का उपयोग कैसे करें

तो इंजन सफलतापूर्वक मेरी उदाहरण बनाया और यह इस तरह दिखता है: instance's info on GCE

मैं एक नया फ़ायरवॉल नियम किसी भी आने वाले अनुरोधों को स्वीकार करने के लिए (वास्तव में मैं ऐसा करने की आवश्यकता कर बनाया डिफ़ॉल्ट-अनुमति देते हैं-जो http एक ही नियम सही है?): enter image description here

लेकिन जब मैं क्रोम का उपयोग कर आईपी तक पहुंचने का प्रयास करता हूं, तो मुझे एक त्रुटि मिलती है। त्रुटि तब भी बनी रहती है जब मैं ब्राउज़र बदलता हूं उदा। आईई या फ़ायरफ़ॉक्स:

enter image description here

मैंने पुष्टि की है कि मैं पता पिंग कर सकते हैं: enter image description here

मैं भी उदाहरण के लिए एक डोमेन नाम आवंटित करने के लिए करने की कोशिश की लेकिन यह अभी भी काम नहीं करता: enter image description here

क्या मुझे पता है कि मैं गलत तरीके से क्या कर रहा हूं?

किसी भी सलाह की सराहना करेंगे! अग्रिम में धन्यवाद!

+0

आप इस का समाधान करने में सक्षम थे पर lauched है तो क्या होगा? यदि ऐसा है तो कृपया उत्तर प्रकाशित करें ताकि समुदाय लाभ उठा सके। यहां समस्या निवारण के लिए कुछ संकेत दिए गए हैं जो अन्य anwsers को इंगित करते हैं: ए) सर्वर में एसएसएच और जांचें कि वह उस बंदरगाह पर सुन रहा है। यानी "netstat -tulpn"। बी) सत्यापित करें कि वीएम अवरुद्ध कनेक्शन (यानी iptables) में कोई फ़ायरवॉल नहीं है। सी) Google फ़ायरवॉल में एक नियम जोड़ें ("डिफ़ॉल्ट-अनुमति-http" पोर्ट 80 के लिए काम करेगा लेकिन सर्वर को अभी भी एक लेबल होना चाहिए)। – Carlos

उत्तर

-1

त्रुटि CONNECTION_RESET है। मेरा अनुमान है कि मीन स्टैक पोर्ट 80 पर नहीं सुन रहा है।

+0

मैं कैसे जांच सकता हूं कि मीन स्टैक पोर्ट 80 पर सुन रहा है या नहीं? मैं इसे कैसे निर्देश दे सकता हूं? – jasonC

+0

एक आसान तरीका वीएम और 'curl http: //127.0.0.1: 80'' पर ssh करना है। – Dagang

0

अधिक स्पष्ट रूप से - फ़ायरवॉल का काम केवल आने वाले कनेक्शनों को अस्वीकार करने और चुपचाप उन्हें छोड़ने के लिए है।

इस मामले में, आप: (ए) वीएम के सार्वजनिक आईपी पते से पिंग प्रतिक्रियाएं देखें, यह दर्शाता है कि आईसीएमपी फ़ायरवॉल द्वारा अवरुद्ध नहीं है। (बी) वीएम द्वारा भेजे गए टीसीपी एसईएन पैकेट के जवाब में वीएम द्वारा भेजे गए एक टीसीपी आरएसटी पैकेट को देखें क्योंकि यह वीएम पर एक टीसीपी सर्वर से कनेक्ट करने का प्रयास करता है। यह इंगित करता है कि टीसीपी पोर्ट 80 को संबोधित किए गए पैकेट फायरवॉल द्वारा भी अपेक्षित हैं।

यहां क्या गुम है आपके वीएम पर एक सर्वर एप्लिकेशन है जो पोर्ट 80 पर कनेक्शन सुनता है, HTTP अनुरोध प्राप्त करता है और जवाब देता है। आप दौड़ने का प्रयास कर सकते हैं, कहें, अपाचे (या Nginx, जो सेट अप करने के लिए भी आसान है)।

अपने अन्य सवाल के जवाब में - आप जरूरत नहीं दूसरा टीसीपी: 80 फ़ायरवॉल नियम - लेकिन यदि आप अपने वी एम के पैकेट अनुमति देने के लिए डिफ़ॉल्ट http शासन चाहते हैं, तो आप अपने वी एम के लिए एक टैग करने की आवश्यकता होगी "http-server" लेबल किया गया।

+0

वास्तव में, यह जांचने के लिए कि फ़ायरवॉल वीएम पर किसी भी अन्य बंदरगाह पर टीसीपी कनेक्शन को सही ढंग से अवरुद्ध कर रहा है, अपने ब्राउज़र में "http://104.154.39.199:8080" टाइप करने का प्रयास करें। इस मामले में (जब तक आप पोर्ट 8080 को अनुमति देने के लिए अपनी फ़ायरवॉल प्रविष्टि को संशोधित नहीं करते) आपको कनेक्शन टाइमआउट प्राप्त करना चाहिए। यदि आप _add_ पोर्ट 8080 (बिना सुनवाई सर्वर के), तो आपको एक आरएसटी मिलेगा। जीसीई ऐपइंजिन से थोड़ा अलग है जिसमें एक वेबसर्वर स्वचालित रूप से आपके वीएम पर सेट नहीं होता है - लेकिन यह अधिक लचीला है कि आपके पास क्या चल रहा है पर पूरा नियंत्रण है। हालांकि, Nginx स्थापना और सेटअप बहुत आसान है - तो इसे एक शॉट दे दो! – Kevin

1

MEAN स्टैक ऐप सुरक्षा कारण के लिए केवल स्थानीयहोस्ट पते पर पोर्ट 3000 (डिफ़ॉल्ट पता) पर एक्सप्रेस के साथ चल रहा है। इंटरनेट पर (पोर्ट 80 पर) देखने के लिए एप्लिकेशन को बढ़ावा देने के लिए, बस अपाचे (या nginx, या ...) पर प्रॉक्सी रिवर्स क्लॉज बनाएं।

sudo नैनो /opt/bitnami/apache2/conf/bitnami/bitnami-apps-vhosts.conf

इस तरह इस बयान जोड़ें: ProxyPass http://localhost:3000 ProxyPassReverse http://localhost:3000

sudo/opt/bitnami/ctlscript।श पुनः आरंभ

अपाचे एप्लिकेशन को आपके उदाहरण आप इसे खोल सकते हैं का उपयोग कर http://address_of_VMInstance/yourapp

संबंधित मुद्दे