2013-08-24 4 views
5

हमारे पास एक फास्टसीजीआई-आधारित वेब ढांचा है जिसे हम कुछ मिशन महत्वपूर्ण ऐप्स के लिए आंतरिक रूप से उपयोग करते हैं। इस प्रकार एक मौजूदा पीएसजीआई-शिकायत ढांचे में जाना बहुत व्यावहारिक नहीं है। हमने अपने ढांचे को सादे पुराने CGI.pm से प्लाक हैंडलरों तक सफलतापूर्वक स्थानांतरित कर दिया है।क्या मुझे mod_rewrite नियमों को Plack :: Middleware :: रीवाइट नियमों में कनवर्ट करने की आवश्यकता है यदि मेरा वेब ढांचा PSGI का समर्थन करना चाहता है?

हालांकि, अपाचे की कॉन्फ़िगरेशन फ़ाइल के अंदर, mod_rewrite नियमों के रूप में, बहुत सारे रूटिंग तर्क हैं। अगर हम अपाचे में रिवर्स प्रॉक्सी के माध्यम से प्लाक :: हैंडलर :: एफसीजीआई का उपयोग करके हमारे नए पीएसजीआई अनुपालन ढांचे का उपयोग करने वाले ऐप्स को तैनात करना चाहते थे, तो मुझे लगता है कि कुछ tweaks के साथ mod_rewrite नियम वहां काम करना जारी रख सकते हैं। (ऐसा करने की योजना है, लेकिन अभी तक कोशिश नहीं की है)।

हालांकि, Plack :: Middleware :: के बारे में पढ़ना mod_rewrite के प्रतिस्थापन के रूप में पुनर्लेखन ने मुझे भ्रमित कर दिया है।

क्या मुझे mod_rewrite नियमों को प्लेक :: मिडलवेयर :: रीवाइट नियमों में परिवर्तित करने और पीएसजीआई के पूर्ण लाभ प्राप्त करने के लिए पूरी तरह से पर्ल पर सभी ऐप तर्क को स्थानांतरित करने की आवश्यकता है?

मुझे लगता है कि उत्तर हाँ है, लेकिन मुझे पीएसजीआई ऐप्स को तैनात करने का कोई अनुभव नहीं मिला है, इसलिए अगर मैं अपने अनुभव को साझा कर सकता हूं तो यह सुनिश्चित करने के लिए कि मैं सही रास्ते पर जा रहा हूं।

उप-प्रश्न सब के बारे में वेब सर्वर दे PSGI के विचार है करने के रूप में छोटे (और के रूप में तेजी से) संभव के रूप में और आवेदन सर्वरों के लिए अन्य सभी सामान (मिडल वेयर) सौंपने? **

+0

मुझे लगता है कि यह प्रश्न वास्तव में एक sysadmin सवाल नहीं है क्योंकि इसमें एक पीएसजीआई अनुपालन वेब ढांचे के अंदर अपाचे मोड_rewrite नियमों को पर्ल कोड में परिवर्तित करना शामिल है। मैं इसे एक ढांचा कार्यान्वयन के परिप्रेक्ष्य से पूछ रहा हूँ। – GeneQ

+1

आपके सबवेस्टियन का उत्तर: पीएसजीआई वेब एप्लिकेशन लिखना आसान बनाता है जो किसी विशिष्ट वेब सर्वर पर निर्भर नहीं होता है। तो अगर आपको इसकी ज़रूरत है, तो पीएसजीआई के भीतर जितना संभव हो उतना करने की कोशिश करें। –

उत्तर

3

पीएसजीआई का लाभ तैनाती लचीलापन है। जब तक आपके पास mod_rewrite में नियम हैं, तो आप अपाचे से फंस गए हैं और इसलिए, पीएसजीआई का पूरा लाभ नहीं प्राप्त कर रहे हैं।

हालांकि, जब तक आप अपाचे से खुश हैं, मुझे को को अपने सभी नियमों को फिर से लिखने के लिए एक मजबूत प्रेरणा दिखाई नहीं दे रही है। यदि mod_rewrite आपको सिरदर्द दे रहा है, तो इसके लिए जाएं।

इसके अलावा Router::Simple या Path::Router

की तरह कुछ के साथ अपने मुख्य अनुप्रयोग कोड में अपने मार्ग तर्क डाल BTW, वहाँ 'शायद कोई Plack :: हैंडलर :: FCGI का उपयोग करने के कारण मानते हैं, जब तक आप वास्तव में FastCGI से जुड़े होते हैं। अपाचे को अपने रिवर्स प्रॉक्सी के रूप में रखें और आपका ऐप स्टार्टलेट या अन्य प्लेक वेब सर्वरों में से एक में चलता है।

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