2009-07-10 23 views
7

के पीछे मेरे पास 2 सर्वर हैं। वेब पर एक रिवर्स प्रॉक्सी और वेबडावी की सेवा करने वाले एक निजी लिंक पर एक।वेबडावी एक रिवर्स प्रॉक्सी

बूथ सर्वर apache httpd v2 हैं।

प्रॉक्सी पर मेरे पास है:

 
    ProxyRequests Off 

    <Proxy *> 
     Order deny,allow 
     Allow from all 
    </Proxy> 

    ProxyPass   /repo/ http : //share.local/repo/ 
    ProxyPassReverse /repo/ http : //share.local/repo/ 

डीएवी सर्वर मेरे पास है पर:

 
<Location /repo/> 
    DAV on 
    Order allow,deny 
    allow from all 
</Location> 

रिवर्स प्रॉक्सी https के माध्यम से पहुंचा जा सकता है और निजी सर्वर http के माध्यम से पहुँचा जा सकता है। और समस्या निहित है!

केवल आदेश पढ़ें ठीक काम करते हैं। लेकिन जब मैं कुछ ले जाना चाहता हूं तो मुझे 502 Bad gateway मिलता है। इसका कारण रिवर्स प्रॉक्सी विस्तारित डेव अनुरोध के अंदर यूआरएल को दोबारा लिखना नहीं है।

स्रोत यूआरएल हेडर के अंदर है और सही ढंग से http://share.local/file1 में बदल दिया गया है। गंतव्य URL कुछ xml टुकड़ा मुझे समझ नहीं आता के अंदर है और रहता है https://example.com/file1 :(

वहाँ अपाचे सही ढंग से अनुरोध को बदलने जाने के लिए एक मानक तरीका है?

आपके प्रयास के लिए धन्यवाद।

+0

स्टैक ओवरफ़्लो ने कहा था कि मैं केवल एक यूआरएल पोस्ट कर सकता हूं :(इसलिए मैंने रिक्त स्थान जोड़े। मेरी मूल कॉन्फ़िगरेशन फाइलों में यूआरएल सही हैं। –

उत्तर

9

हम्म , इस सवाल का जवाब मिल गया हमेशा एक ही :)

मैं कहा:।

 
LoadModule headers_module /usr/lib/apache2/modules/mod_headers.so 

RequestHeader edit Destination ^https http early 

और इसने काम कर दिया। मुझे नहीं पता कि इसमें कमी है या नहीं। मैं देखूंगा।

+0

अच्छा लगता है। शायद यह डिफ़ॉल्ट कॉन्फ़िगरेशन होना चाहिए। –

2

गंतव्य यूआरएल एक्सएमएल में नहीं बल्कि "गंतव्य" शीर्षलेख में होना चाहिए, जैसा कि आपने पहले ही देखा है। हो सकता है कि आप त्रुटि प्रतिक्रिया को देख रहे हों ...

सामान्य रूप से, यह समस्या तब दूर हो जाएगी जब क्लाइंट और सर्वर WebDAV स्तर 3 को लागू करते हैं (जैसा कि आरएफसी 4 9 18 में परिभाषित किया गया है), जो गंतव्य शीर्षलेख को केवल एक सापेक्ष पथ होने की अनुमति देता है।

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