जब मेरी वेबसाइट उसी LAN पर किसी अन्य कंप्यूटर द्वारा एक्सेस की जाती है तो मेरी वेबसाइट सही ढंग से प्रदर्शित क्यों नहीं होती


1

मैं अपने स्थानीय होम नेटवर्क पर एक वेब सर्वर (उबंटू) चला रहा हूं। मैं एक राउटर के पीछे हूं। WAN पर मेरा सीधा IP है। जब मेरे होम नेटवर्क पर नहीं है और WAN डायरेक्ट आईपी के माध्यम से मेरी वेबसाइट तक पहुँच मेरी वेबसाइट सही ढंग से प्रदर्शित करती है और सब कुछ काम करता है

राउटर के पीछे मेरे होम लैन पर, WAN डायरेक्ट के माध्यम से मेरी वेबसाइट तक पहुंच मुझे अपने राउटर के एडमिन लॉगिन पेज पर मिलती है। यह सामान्य बात है। परंतु...

मेरे घर के दूसरे कंप्यूटर से मेरी वेबसाइट (इसके होम लैन आईपी पते के माध्यम से) तक पहुंच मुझे वेबसाइट पर मिलती है लेकिन लेआउट डिस्प्ले टूट गया है और किसी भी लिंक पर क्लिक करने से मुझे WAN डायरेक्ट आईपी (मेरे राउटर के एडमिन लॉगिन पेज) पर ले जाता है।

मैं अपनी वेबसाइट को ठीक से प्रदर्शित करने के लिए और अपने होम लैन से इसे एक्सेस करने के लिए लिंक कैसे प्राप्त कर सकता हूं?


मुझे तब और अधिक जानकारी चाहिए। आपका डोमेन नाम क्या है? यह लैन पर एक फ़ोल्डर में है? क्या लिंक टूटते हैं?
McKayla

जवाबों:


4

अपने सीएसएस और जावास्क्रिप्ट यूआरएल की जाँच करें। आपको उन्हें पूर्ण लिंक के सापेक्ष स्विच करना पड़ सकता है, क्योंकि यह लगता है कि साइट को एक्सेस करने का प्रयास करने के आधार पर URL रूटिंग अलग है।

ऐसा करने का सबसे आसान तरीका उन संसाधनों को देखना है जो ब्राउज़र फायरबग या डेवलपर टूल (संसाधन संसाधन) का उपयोग करके लोड करने का प्रयास कर रहा है। सत्यापित करें कि आपके स्टाइलशीट ठीक से लोड किए जा रहे हैं (आपको उन्हें चुनने और सामग्री को देखने में सक्षम होना चाहिए)। यदि वे उनके नहीं हैं, या आपको संसाधन टैब पर कोई त्रुटि मिलती है, तो उस URL की जांच करें जिसे ब्राउज़र देख रहा है और सुनिश्चित करें कि यह सही URL है।

मैं यह शर्त लगाने को तैयार हूं कि आपका ब्राउज़र आपके LAN आईपी पते पर स्टाइलशीट की तलाश कर रहा है, लेकिन इसे WAN IP पते पर देखना चाहिए।


LAN IP एड्रेस का इस्तेमाल वेबसाइट में उस साधारण कारण के लिए नहीं किया जाता है, जिस व्यक्ति ने वेबसाइट बनाई थी, वह रिमोट है। वह WAN के माध्यम से वेब सर्वर तक पहुँचता है और वह मेरे LAN IP पते को नहीं जानता है।
TokyoDan

1

आपका राउटर सही ढंग से "हेयरपिन NAT" नहीं कर रहा है। सस्ते घर गेटवे के बहुत सारे छोटी गाड़ी NAT कोड है जो यह अधिकार नहीं करता है।

ऐसा लगता है कि आपने अपने राउटर के पोर्ट मैपिंग (उर्फ "पोर्ट फॉरवर्डिंग") या DMZ (उर्फ "डिफॉल्ट होस्ट", "बैस्टियन होस्ट", आदि) को सही ढंग से सेट किया है, क्योंकि राउटर के WAN साइड से, जब आप राउटर के सार्वजनिक WAN IP पते पर एक ब्राउज़र इंगित करते हैं, तो आप अपने वेब सर्वर से पृष्ठ प्राप्त करते हैं।

लेकिन अगर आप अपने आंतरिक नेटवर्क पर हैं, जब आप अपने राउटर के सार्वजनिक WAN IP पते से जुड़ते हैं, तब भी आपको अपने वेब सर्वर का पेज मिलना चाहिए, न कि आपके राउटर के एडमिन पेज का। यदि आपका राउटर अपने नैट प्राइवेट आईपी एड्रेस पर पोर्ट 80 से कनेक्ट होने पर इसके एडमिन पेज की सेवा करना चाहता है, तो यह ठीक है। लेकिन सार्वजनिक वान आईपी पते पर नहीं।

जब आप NAT के निजी पक्ष के क्लाइंट पर होते हैं और अपने NAT निजी IP पते के माध्यम से सीधे वेब सर्वर तक पहुंचने का प्रयास करते हैं, तो यह पहली HTML फ़ाइल को लोड कर सकता है जैसे कि URL के आधार पर ठीक " http://192.168.0.254/ ", लेकिन जब ब्राउज़र सीएसएस फ़ाइल और छवियों को लोड करने के लिए जाता है, तो यह संभवतः URL जैसे बनाता है" http://mydomain.com/styles.css ", जिसका अर्थ है आपके राउटर का सार्वजनिक WAN IP पता, जो आपके छोटी गाड़ी के राउटर के कारण होता है। आपके राउटर का प्रशासन वेब सर्वर उन अनुरोधों को स्वयं ही रोक रहा है, और इसमें वे संसाधन नहीं हैं, जिससे सामान टूट जाता है।


मेरे LAN से (फ़ायरवॉल के पीछे) जब मैं WAN IP पर जाता हूँ तो मुझे रूटर एडमिन पेज मिलता है। जब मैं सर्वर के लैन आईपी पते पर जाता हूं तो मुझे इंडेक्स पेज मिलता है लेकिन लेआउट सभी खराब हो जाता है। और हाइपरलिंक काम नहीं करते।
TokyoDan

@ तोक्यो दान हां, मैं समझ गया। ठीक यही स्थिति मेरे उत्तर पर लागू होती है। जब आप राउटर के वैन आईपी से लैन पर जाते हैं तो आपको राउटर का व्यवस्थापक पृष्ठ नहीं मिलना चाहिए। आपको अभी भी अपने सर्वर को वैसे ही प्राप्त करना चाहिए जैसे आप अपने नेटवर्क के बाहर से करते हैं। तथ्य यह है कि आप अपने रूटर के व्यवस्थापक पृष्ठ प्राप्त करते हैं इसका मतलब है कि यह NAT हेयरपिनिंग सही तरीके से नहीं कर रहा है।
Spiff

0

आपको पूर्ण लिंक के बजाय सापेक्ष लिंक की आवश्यकता है। तो इसके बजाय अपने HTML में कुछ इस तरह से:

<link rel="stylesheet" type="text/css" href="http://example.com/mysite.css" />
<img src="http://example.com/images/someimage.png" alt="Some Image" />

आपको इसे इस तरह देखना होगा:

<link rel="stylesheet" type="text/css" href="/mysite.css" />
<img src="/images/someimage.png" alt="Some Image" />

यह थोड़ा मदद कर सकता है, लेकिन अगर उसके राउटर ने NAT को सही ढंग से किया है तो उसे ऐसा नहीं करना होगा। यदि वह इस "सभी लिंक को सापेक्ष बनाते हैं" मार्ग पर जाता है, तो उसे अपने वेब सर्वर को पुनर्निर्देशित / फिर से लिखना नियमों को फिर से कॉन्फ़िगर करना होगा। उदाहरण के लिए, मेरे OS पर Apache की डिफ़ॉल्ट स्थापना पुनर्निर्देशित होगी " 192.168.0.1 " सेवा मेरे " mydomain.com "(उफ़, मार्काडाउन ने http: // को खा लिया है) उन लोगों के लिए" बस पीछे छोड़ने के लिए "/", और इस तरह एक पुनर्निर्देशन उनके टूटे हुए नैट गेटवे को फिर से चला देगा।
Spiff

मैं कहां देखूं या मैं अपने राउटर में कौन सी सेटिंग्स की जांच करूं यह सुनिश्चित करने के लिए कि मेरे पास हेयरपिन NAT सेटअप सही ढंग से है?
TokyoDan

0

यह आपके डोमेन नाम (यानी: site.com) का उपयोग करके आपके नेटवर्क के बाहर से आपकी थीम को लोड करने का प्रयास कर रहा है

एक आसान फिक्स अपने / etc / मेजबान फ़ाइल को संपादित करना और जोड़ना है

IP.OF.LOCAL.WEBSERVER site.com sitehostname
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.