Apache ProxyPass to Tomcat - URL से संदर्भ पथ कैसे निकालें?


0

मेरे पास अपाचे आत्मविश्वास है:

<IfModule mod_ssl.c>
<VirtualHost *:443>

    ServerName project.example.com
    ServerAlias ci
    ProxyRequests Off

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

    ProxyPreserveHost on
    ProxyPass / http://localhost:1111/project

    SSLCertificateFile /etc/letsencrypt/live/sub.example.com/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/sub.example.com/privkey.pem
    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLCertificateChainFile /etc/letsencrypt/live/sub.example.com/chain.pem

</VirtualHost>
</IfModule>

जब मैं प्रवेश करता हूं project.example.com, तो मुझे https://project.example.com/project/users/sign_inएक ब्राउज़र मिलता है। URL से संदर्भ पथ कैसे निकालें? मैं projectURL से निकालना और प्राप्त करना चाहता हूं https://project.example.com/users/sign_in?

जवाबों:


0

मुझे लगता है कि आप अनुगामी स्लैश को याद कर रहे हैं:

ProxyPass / http://localhost:1111/project/

इसी ProxyPassReverse को परिभाषित करना भी एक अच्छा विचार है:

ProxyPassReverse / http://localhost:1111/project/

धन्यवाद, लेकिन यह काम नहीं किया।
जस्टास

0

तो पहले आवेदन से संदर्भ रूट को हटा दिया जाएगा। जब तक आप संदर्भ को / (रिक्त) के रूप में परिभाषित नहीं करते हैं आप संदर्भ रूट के बिना आवेदन तक नहीं पहुंच सकते।

इस सॉल्यूशन से आपको यह पता लगना चाहिए कि संदर्भ रूट को कैसे बदलना है। एक बार जब आप कदमों के साथ हो जाते हैं, तो आपको अपने आवेदन को http: // localhost: 1111 / पर एक्सेस करने में सक्षम होना चाहिए ।

फिर httpd कॉन्फ़िगरेशन में प्रोजेक्ट का नाम हटाकर:

ProxyPass / http://localhost:1111/

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