कैसे कस्टम निर्देशिका जोड़ने के लिए जैसे phpmyadmin?


11

जैसा कि मेरा ज्ञान apacheन्यूनतम है। मैं इसे बढ़ने देना चाहता हूं इसलिए मुझे LAMP के साथ अधिक अनुभव होगा। आज के लिए मेरा गर्म सवाल है:

Webserver में custom directory कैसे add करें? (उदाहरण phpmyadmin)?

मेरा लक्ष्य भीतर कस्टम वेबसाइटों के साथ कस्टम पते बनाने में सक्षम होना है। मान लीजिए कि मेरे पास मेरी कस्टम निर्देशिका है: /media/my/web/portal1और जब ग्राहक कॉल करता है, तो मैं इसे लोड करना चाहूंगा

http://localhost/myportal1 at webbrowser. 

क्या आप मुझे स्पष्टीकरण के कुछ शब्दों के साथ चरणों की एक सूची दे सकते हैं?

जवाबों:


26

अपनी Apache config फाइल को संपादित करें और एक उपनाम निर्देश जोड़ें । उदाहरण के लिए, चलो डिफ़ॉल्ट फ़ाइल का उपयोग करते हैं।

sudo -e /etc/apache2/sites-available/default

VirtualHost निर्देश के भीतर एक अनुभाग जोड़कर अपना उपनाम बनाएं :

Alias /database/ "/usr/share/php5/phpmyadmin/"
<Directory "/usr/share/php5/phpmyadmin/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>

सहेजें और पुनः आरंभ करें: sudo /etc/init.d/apache2 restart

या अन्य संदर्भ के लिए:

sudo -e /etc/apache2/sites-available/default

और सामग्री ...

Alias /myportal1/ "/media/my/web/portal1/"
<Directory "/media/my/web/portal1/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>

सहेजें और पुनः आरंभ करें: sudo /etc/init.d/apache2 restart

निर्देशिका निर्देशों के भीतर और निर्देश जोड़ें , जैसे कि

Options Indexes FollowSymLinks 

Http://httpd.apache.org/docs/2.2/mod/core.html#directory देखें

कि आप आखिर क्या थे?


मुझे लगता है कि उन परिवर्तनों को करने के बाद अपाचे को फिर से लोड करना पर्याप्त है?
जो-एर्लेंड शिनस्टैड

ओह - हाँ ... धन्यवाद Jo-Erland Schinstad

धन्यवाद क्रिस्टोफर! बस यही तो मैं ढूंढ रहा था! :)
एड्रियन के।

मैंने इस पंक्ति को निषिद्ध त्रुटियों को रोकने के लिए <डायरेक्टरी> सेक्शन को जोड़ा, उम्मीद है कि एडिट को जल्द ही स्वीकार कर लिया जाएगा: सभी की आवश्यकता है
रिचर्ड

3
उपनाम नाम में समाप्त स्लैश को लागू करने की कोई आवश्यकता नहीं है। यह उपयोगकर्ता को URL पर सख्ती से टाइप करने के लिए मजबूर करता है। ऐसे मामले में, उपनाम / myportal1 के अलावा अन्य उपनाम / myportal1 /। नोट गायब लुप्त स्लैश।
गिल्बर्टो अल्बिनो

6

एक सरल विकल्प दस्तावेज़ रूट से एक नरम लिंक बनाना है। उदाहरण के लिए, यदि दस्तावेज़ रूट "/ var / www" (अधिकांश लिनक्स सिस्टम पर डिफ़ॉल्ट) है, तो निम्न कमांड चाल करता है:

sudo ln -s /media/my/web/portal1 /var/www/myportal1

यह तुरंत काम करता है - आपको अपाचे सर्वर को फिर से लोड करने की आवश्यकता नहीं है।


1

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

दूसरा, इस निर्देशिका को अपने घर के रूप में उपयोग करने वाली साइट को सेटअप करने के लिए, आप साइट्स-फाइल्स, जैसे / etc / apache2 / sites-available / your-site बनाते हैं। यह व्हाट्सएपिंग का हिस्सा है। दो अलग-अलग प्रकार हैं; एक नाम पर आधारित (डोमेन नाम) और एक आईपी पर आधारित है। नाम-आधारित vhosts का उपयोग करने के लिए सबसे आम सेटअप है। आप इसके बारे में और अधिक यहाँ पढ़ सकते हैं: http://httpd.apache.org/docs/2.2/vhosts/


संदर्भ के लिए धन्यवाद। मैं निश्चित रूप से इस में खुदाई करेंगे! :)
एड्रियन के।

0

तो सरल दो लाइनों में:

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf

उपरांत

बस "phpmyadmin.conf" फ़ाइल को संपादित करें

pico /etc/apache2/conf.d/phpmyadmin.conf

और इसे 'लूल' या जो कुछ भी है उसे बदल दें :)

Alias /loooool /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>

SetEnvIfNoCase User-Agent "^ZmEu" bad_bot
SetEnvIfNoCase User-Agent "^BackDoorBot" bad_bot
SetEnvIfNoCase user-agent "^BlackWidow" bad_bot 
SetEnvIfNoCase User-Agent "^BotALot" bad_bot

इस पुनः लोड के बाद अपाचे: डी

service apache2 reload

टाडा: डी सियाओ :)

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