मेरे पास एक एकल टोमकैट उदाहरण है जिसमें कई वेबपैप्स हैं, प्रत्येक इसके/संदर्भ के माध्यम से सुलभ हैं। टोमकैट httpd (वास्तव में डेबियन अपाचे 2) के पीछे है, जो प्रत्येक ऐप/संदर्भ की सेवा के लिए वर्चुअल होस्ट के साथ कॉन्फ़िगर किया गया है। टॉमकैट कनेक्टिविटी mod_jk के साथ है।वर्चुअल होस्ट (mod_jk, mod_rewrite) के लिए URL से टॉमकैट संदर्भ को हटा रहा है
यह ठीक काम करता है जब मुझे urls से संदर्भ को हटाने की परवाह नहीं है: जब किसी वर्चुअल डोमेन की रूट का अनुरोध किया जाता है, तो अनुरोध डोमेन.com/Context पर रीडायरेक्ट किया जाता है।
हालांकि एक ऐप के लिए मैं संदर्भ को हटाना चाहता हूं। मेरा मानना है कि यह mod_rewrite का उपयोग करके किया जा सकता है, और सही टोमकैट संदर्भ पर जाने के लिए mod_jk को पुनः लिखित यूआरएल पास कर सकता है। तो मेरी डेबियन Apache2 साइटों से उपलब्ध फ़ाइल इस तरह दिखता है:
NameVirtualHost *
<VirtualHost *>
ServerName domain.be
DocumentRoot /home/webapp/app/static/domain/
RewriteEngine on
RewriteRule ^/(.*)$ /Context/$1 [L,PT]
RewriteLog "/var/log/apache2/domain-rewrite.log"
RewriteLogLevel 4
JkLogFile /var/log/apache2/domain-mod_jk.log
JkLogLevel debug
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkMount /Context w1
JKMount /Context* w1
JkOptions +ForwardURICompat
ErrorLog /var/log/apache2/domain_error.log
CustomLog /var/log/apache2/domain_access.log combined
LogLevel warn
</VirtualHost>
डॉक्स, [पीटी] झंडा और + ForwardURICompat विकल्पों के अनुसार फिर से लिखा URL में परिणाम चाहिए jk_mod पर प्रदान किया गया। हालांकि ऐसा प्रतीत नहीं होता है।
यूआरएल फिर से लिखा जा रहा है, लेकिन ऐसा लगता है कि mod_jk इसे अनदेखा कर रहा है: उदाहरण के लिए domain.be/Context के लिए अनुरोध/संदर्भ/संदर्भ के रूप में पुनः लिखा गया है - लेकिन अभी भी mod_jk के रूप में/संदर्भ को सौंप दिया गया है।
कोई विचार? संयोग से, मैं फिलहाल mod_proxy का उपयोग नहीं कर सकता।
धन्यवाद
आप सही हैं कि मेरा मूल समाधान सबसे अच्छा तरीका नहीं है और खतरे से भरा हुआ है। लेकिन पोस्ट करने के बाद से, मैंने टोमकैट वर्चुअलहोस्ट्स को बहुत सफलता के साथ उपयोग किया है। इसका उपयोग करने वाले लोगों के बारे में सुनने के बावजूद, यह निश्चित रूप से इस स्थिति में उपयोग करना चाहेगा और एक बनाने के बाद भी मुश्किल नहीं है। –