2012-11-06 35 views
7

पृष्ठभूमि:PHP-आधारित वेबसाइट को डुप्लिकेट कैसे करें?

मैं PHP के लिए नया हूँ, लेकिन मैं हमारे इंट्रानेट पर होस्ट एक आवेदन का समर्थन करने के लिए कुछ कोड में परिवर्तन करने के लिए कहा गया है। वास्तविक कोड परिवर्तन बहुत खराब नहीं दिखते हैं। हालांकि, वर्तमान में कोई विकास वातावरण नहीं है, इसलिए मैंने अपने परिवर्तनों को विकसित और परीक्षण करने के लिए एक डुप्लिकेट सर्वर बनाने के लिए कार्य किया है।

इस बिंदु पर, और PHP में अच्छी तरह से ज्ञात नहीं होने पर, ऐसा लगता है कि मुझे उत्पादन मशीन पर सभी अपाचे HTTPD और PHP कॉन्फ़िगरेशन सेटिंग्स/विकल्प/पैकेज इंजीनियर को रिवर्स करना पड़ सकता है जब तक कि मैं मौजूदा उत्पादन को रणनीतिक रूप से कॉपी नहीं कर सकता विकास मशीन के लिए पर्यावरण।

मेरे सवालों का:

  1. यह है कि ऐसा करना संभव है? यानी मूल वातावरण को दोहराने के लिए अपाचे/PHP स्थापना में एफ़टीपी कुछ निर्देशिकाओं के लिए? यदि हां, तो कौन सी निर्देशिकाएं? एक जटिलता यह हो सकती है कि मूल वातावरण एसयूएसई लिनक्स है और विकास मशीन सेंटोस है। इसके अलावा, मैंने dev मशीन पर मिलान HTTP और PHP संस्करणों को स्थापित किया है।
  2. यदि यह बुद्धिमान/संभव नहीं है, तो मुझे पर्यावरण को डुप्लिकेट करने के बारे में कैसे जाना चाहिए? मुझे किन क्षेत्रों को जांचना चाहिए?

अग्रिम धन्यवाद!

+2

यह एप्लिकेशन की प्रकृति के आधार पर http://www.serverfault.com –

+1

के लिए बेहतर फिट हो सकता है, पर्यावरण की सटीक डुप्लिकेट की आवश्यकता नहीं हो सकती है। खिड़कियों पर कई साइटें \ अनुप्रयोग विकसित किए जाते हैं और फिर लिनक्स पर अपलोड होते हैं और सब ठीक है - लेकिन यह कहना असंभव है कि यह मामला यहां होगा। आप सर्वर पर किसी अन्य निर्देशिका में एक प्रतिलिपि डाल सकते हैं, तो अधिकांश चीजें समान होंगी। –

+0

दूसरी मशीन पर 'वर्चुअल मशीन' या 'वीएमवेयर' का उपयोग करना आपकी स्थिति के आधार पर एक विकल्प हो सकता है। – Xaqron

उत्तर

2

पहले से उल्लिखित समाधानों का एक विकल्प उत्पादन मशीन पर वर्चुअल होस्ट सेट करना होगा, test.yourdomain.com जैसे कुछ और डेटाबेस को एक परीक्षण डेटाबेस में कॉपी करें।

फिर आप परीक्षण साइट में लाइव सर्वर पर अपनी साइट का परीक्षण कर सकते हैं और आपको केवल परीक्षण संस्करण में अपनी डीबी कनेक्शन सेटिंग्स बदलनी होगी।

1

यह क्लोन सर्वर पर बहुत आसान और बहुत कम दिल का दर्द होगा, आपको उन लोगों से बात करने की आवश्यकता हो सकती है जो ऐसा करने के लिए आपके सर्वर की देखभाल करते हैं। कारण मैं यह कहता हूं क्योंकि विभिन्न मॉड्यूल/पुस्तकालय और सर्वर पर मौजूद अन्य सामानों की एक पूरी मेजबानी हो सकती है, यदि आपको ऐप प्राप्त करना है तो आपको वास्तव में यह पता लगाने में काफी समय लगेगा सेंटोस मशीन पर बिल्कुल वही चलाने के लिए। दूसरी बात यह है कि दोनों वातावरण समान हैं, इस तरह आप जानते हैं कि आपके परीक्षण विश्वसनीय हैं।

+1

मुझे नहीं पता कि यह @Steve टी के लिए चिंता का विषय है, लेकिन एक एसयूएसई सर्वर क्लोन करने से अतिरिक्त लाइसेंसिंग लागत होगी। यह उत्पादन सर्वर SuSE और देव बॉक्स CentOS के कारण का हिस्सा हो सकता है। –

2

पूरी चीज को वीएम में क्लोन करें, कोड निकालें और उसे एक स्रोत कोड भंडार (उदाहरण के लिए गिट) में डाल दें।

अपनी मशीन पर विकसित होने के बाद, अपने वीएम पर तैनात करें (जब तक कि आप एक और मशीन नहीं प्राप्त कर सकते हैं या आपके पास क्लोन मशीन की कॉन्फ़िगरेशन इंजीनियर को समय और धैर्य है)।

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

2

मुझे पर्यावरण को डुप्लिकेट करने के बारे में कैसे जाना चाहिए? मुझे किन क्षेत्रों को जांचना चाहिए?

आप निश्चित रूप से इस पर गौर करना चाहिए:

  • /etc/httpd/
  • /etc/php5/ (एक अलग नाम हो सकता है)

विशेष रूप से, फ़ाइलों php.ini, httpd.conf और apache2.conf से शुरू, निहित उन फ़ोल्डरों में।