मैं अपने होम डायरेक्टरी में वेब पेज कैसे बनाऊं और वेब सर्वर ने अपने वेब ब्राउजर में उनकी सेवा ली है?


9

मैंने हाल ही में अपने डेबियन स्क्वीज़ (कमांड का उपयोग taskselऔर चयन [ ] Web server) में अपाचे वेब ब्राउज़र स्थापित किया है । अब मैं इसे शुरू करने के लिए प्राप्त करता हूं sudo /etc/init.d/apache2 startऔर फिर मैं अपने ब्राउज़र और कुंजी में जाता हूं और http://localhost" यह काम करता है! " पेज दर्शाता है कि मैंने वेब सर्वर को सफलतापूर्वक स्थापित और शुरू किया है।

अब मुझे पता है कि " यह काम करता है! " पेज के लिए HTML फ़ाइल है /var/wwwऔर मैं इस बात के लिए नेतृत्व कर रहा हूं कि यदि मैं नए पृष्ठ बनाता हूं, तो मुझे उन्हें इस निर्देशिका में रखने की आवश्यकता है। पेज बनाना आसान होगा लेकिन ऐसा करने में, मुझे निर्देशिका के sudoतहत फ़ाइल बनाने / संपादित करने के लिए हर बार कमांड जारी करने की आवश्यकता होती है /var/www

मैं जानना चाहूंगा कि मैं अपने गृह उदाहरण में एक निर्देशिका कैसे बना सकता हूं ~/html/test/index.htmlऔर जब मैंने http://localhost/html/testअपने ब्राउज़र पते में पता दर्ज किया है तो क्या वह पृष्ठ प्रदर्शित होगा ?

जवाबों:


6

जैसा कि उलरिच ने कहा, आप userdirमॉड्यूल को सक्षम करके ऐसा कर सकते हैं ।

डेबियन पर, यह a2enmodउपयोगिता का उपयोग करके किया जा सकता है , जो अपाचे मॉड्यूल को सक्षम या अक्षम करता है। देखते हैं man a2enmod

इस मामले में, आपको बस चलाने की आवश्यकता है

sudo a2enmod userdir

और फिर परिवर्तन को प्रभावी बनाने के लिए Apache सर्वर को पुनरारंभ करें। ध्यान दें कि उपयोगकर्ता का मॉड्यूल आधार अपाचे में है, इसलिए आपको कुछ भी अतिरिक्त स्थापित करने की आवश्यकता नहीं है। संदर्भ के लिए userdir config में है /etc/apache2/mods-available/userdir.conf

सभी a2enmodयहाँ कर रहा है /etc/apache2/mods-enabledनिर्देशिका से फ़ाइलों के लिए एक प्रतीकात्मक लिंक बना रहा है /etc/apache2/mods-available/{userdir.conf/userdir.load}। आप इसे मैन्युअल रूप से भी कर सकते हैं। अर्थात

faheem@orwell:/etc/apache2/mods-enabled$ ls -la userdir.*
lrwxrwxrwx 1 root root 30 Feb  6 03:11 userdir.conf -> ../mods-available/userdir.conf
lrwxrwxrwx 1 root root 30 Feb  6 03:11 userdir.load -> ../mods-available/userdir.load

फिर जो भी वेब सामान आप के तहत उपलब्ध कराना चाहते हैं, उसे डाल दें ~/public_htmlऔर फिर इसे एक्सेसेबल होना चाहिए http://servername/~username


1
हालाँकि, उलरिच का जवाब बहुत ज्यादा है, लेकिन मैंने इसे जवाब के रूप में गुदगुदाया, क्योंकि यह अधिक विस्तृत है।
एरिक

6

आप शायद mod_userdir की तलाश कर रहे हैं : "यह मॉड्यूल उपयोगकर्ता-विशिष्ट निर्देशिकाओं को http://example.com/~user/ सिंटैक्स का उपयोग करके एक्सेस करने की अनुमति देता है ।"

कॉन्फ़िगर के साथ फ़िडलिंग से डरें नहीं, बस कॉन्फिग फाइलों का बैकअप लें और सुनिश्चित करें कि आपका फ़ायरवॉल आपकी अपाचे को बाहरी दुनिया में ब्लॉक कर देता है।


2
धन्यवाद @Ulrich Schwarz, मुझे लगता है कि यह वही है जो मुझे चाहिए। तो, मैं इसे कैसे सेट करूँ? मैं अपाचे के साथ अभी तक बहुत परिचित नहीं हूं (केवल इसे अभी स्थापित किया है) और मुझे नहीं पता कि आपके सुझाव के साथ कैसे आगे बढ़ना है।
एरिक

2

व्यक्तिगत रूप से मैंने प्रतीकात्मक-लिंक का उपयोग किया है , परियोजना के आधार पर या तो लिंक अंदर होना चाहिए /var/www/या /var/wwwखुद मेरा घर निर्देशिका में फ़ोल्डर्स में से किसी एक से लिंक होना चाहिए (उदाहरण के लिए:) ~/projects/www। इस तरह मैं "~" चरित्र से छुटकारा पा सकता हूं। कभी-कभी यह मेरे लिए भी उपयोगी होता है, जब मैं कुछ अन्य दर्शक (जैसे कुछ के माध्यम से http://253.153.87.231/page.html) को दिखाना चाहता हूं , और किसी को कीबोर्ड से परिचित नहीं है, इसलिए वह कीबोर्ड से "~" प्रतीक नहीं ढूंढ सकता (- थोड़े जैसे "कोई" लेबल वाली कुंजी की तलाश)

फहीम और उलरिच ने शायद आपको पहले से ही वैसे भी सबसे अच्छा और सबसे अधिक अनुशंसित उत्तर दिया (कम से कम, जब सुरक्षा का संबंध हो)।


यह वही है जो मैं करना चाहता हूं, क्या यह अच्छी तरह से काम करता है? क्या आप उन लिंक्स को बनाने के लिए सिंटैक्स दे सकते हैं?
मेंशेह

0

अब आप वेब रूट को बदलकर ऐसा कर सकते हैं, लेकिन आप वास्तव में ऐसा नहीं करना चाहते हैं और यहां क्यों:

यदि कोई हमलावर अपाचे में भेद्यता पाता है, या आपके कोड में वह वेब रूट तक पहुंच प्राप्त करने में सक्षम हो सकता है। जहाँ आपके सभी सामान है ...

हमलावरों को रोकने के लिए नियंत्रण के साथ वेब रूट को आमतौर पर संरक्षित किया जाता है। आपका घर, संभवतः बहुत अच्छी तरह से सुरक्षित नहीं है।

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