एक मूल mod_proxy वर्चुअल होस्ट सेट करना


11

मैं एक मूल वर्चुअल होस्ट स्थापित करने का प्रयास कर रहा हूं, जिसमें सभी अनुरोधों को परखने के लिए। एक वेब सर्वर के लिए जो मैंने 127.0.0.1:8080 पर चल रहा है, जबकि सभी अनुरोधों को लोकलहोस्ट करने के लिए मेरे स्थिर फाइलों / var / www पर जा रहा है। मैं Ubuntu 10.04 चला रहा हूं।

मेरे पास libapache2-mod -xy-html स्थापित है और मेरे पास a2enmod प्रॉक्सी के साथ मॉड्यूल सक्षम है। मैंने अपना वर्चुअल होस्ट भी सक्षम किया है। हालाँकि, जब भी मैं test.local जाता हूं, मुझे हमेशा एक cryptic 500 सर्वर त्रुटि मिलती है और मेरे सभी लॉग मुझे बता रहे हैं:

[Thu Mar 03 01:43:10 2011] [warn] proxy: No protocol handler was valid for the URL /. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.

यहाँ मेरा वर्चुअल होस्ट है:

<VirtualHost test.local:80>
    LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
    ServerAdmin webmaster@localhost
    ServerName test.local
    ProxyPreserveHost On

    # prevents this folder from being proxied
    ProxyPass /static !

    DocumentRoot /var/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    <Proxy *>
        Order allow,deny
        Allow from all
    </Proxy>
    ProxyPass / http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

और यहाँ mod_proxy के लिए मेरी सेटिंग्स हैं:

<IfModule mod_proxy.c>
        #turning ProxyRequests on and allowing proxying from all may allow
        #spammers to use your proxy to send email.

        ProxyRequests Off

        <Proxy *>
        # default settings
                #AddDefaultCharset off
                #Order deny,allow
                #Deny from all
                ##Allow from .example.com

        AddDefaultCharset off
        Order allow,deny
        Allow from all
        </Proxy>

        # Enable/disable the handling of HTTP/1.1 "Via:" headers.
        # ("Full" adds the server version; "Block" removes all outgoing Via: headers)
        # Set to one of: Off | On | Full | Block

        ProxyVia On
</IfModule>

क्या किसी को पता है कि मैं क्या गलत कर रहा हूं? धन्यवाद

जवाबों:


35

ऐसा लगता है कि आप mod_proxy_httpमॉड्यूल लोड नहीं कर रहे हैं (जो HTTP सर्वरों के लिए प्रॉक्सी की आवश्यकता है)। मेरे सामने उबंटू 10.04 नहीं है, लेकिन IIRC यह कुछ इस तरह है:

sudo a2enmod proxy_http

मेरे पास प्रॉक्सी_http और प्रॉक्सी_एचटीएमएल दोनों सक्षम हैं और अपाचे को फिर से शुरू करते हैं लेकिन अब मुझे 503 त्रुटि मिल रही है। फायरफॉक्स पर 3 रीफ्रेश के साथ
रीस्टार्ट

[थू मार 03 12:25:29 2011] [त्रुटि] (111) कनेक्शन ने इनकार कर दिया: प्रॉक्सी: HTTP: 127.0.0.1:8080 (लोकलहोस्ट) से कनेक्ट करने का प्रयास विफल हुआ [थू मार्च 03 12:25:29 2011] [त्रुटि ] ap_proxy_connect_backend कार्यकर्ता को अक्षम करने के लिए (लोकलहोस्ट) [थू Mar 03 12:26:05 2011] [त्रुटि] प्रॉक्सी: HTTP: (स्थानीयहोस्ट) के लिए विकलांग कनेक्शन [Thu Mar 03 12:26:10 2011] [त्रुटि] प्रॉक्सी: HTTP: के लिए विकलांग कनेक्शन (लोकलहोस्ट)
सेवनप्रॉक्सिस

दरअसल, अचानक यह काम करना शुरू कर दिया। धन्यवाद।
सेवनप्रॉक्सिस

1
मेरे मामले में, प्रॉक्सी_एजपी गायब था (हम टॉमकैट से जुड़ने के लिए एजेपी का उपयोग करते हैं)।
थॉमस फेरिस निकोलाइसेन

यू ने मेरी जान बचाई @ThomasFerrisNicolaisen
Pras

2

उपरोक्त उत्तर ने मेरे लिए मदद नहीं की क्योंकि मैं चयनित उत्तर में लेखक की टिप्पणी के समान त्रुटि प्राप्त कर रहा था। हालाँकि, मैंने निम्नलिखित पोस्ट और परिवर्तन पाया जिससे मेरी समस्या हल हो गई:

sudo /usr/sbin/setsebool -P httpd_can_network_connect 1

स्रोत: http://allscm.com/archives/apache2-proxy-disabled-connection-on-localhost.html


CentOS / RedHat / Fedora में SELinux है। उबंटू नहीं करता।
मार्टिज़न बर्गर

ओह, उत्कृष्ट बिंदु। मैं मूल पोस्ट पर [ubuntu] टैग से चूक गया, केवल अब उस वर्षों को देख रहा हूं। जब मैं इस समस्या में भाग गया उस समय मैं CentOS 6 पर था, इस प्रकार यहाँ मेरा गलत जवाब था।
माइल स्टीनहॉसर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.