केवल दो बाइंडिंग को छोड़कर दो IIS 8.5 सर्वर कॉन्फ़िगरेशन सिंक करें


12

हमारे पास दो IIS 8.5 वेब सर्वर, सर्वर 2012 R2 हैं

Server1

Server2

मैं एक पॉवरशेल कमांड खोजने की कोशिश कर रहा हूं जो केवल सर्वर 1 पर सर्वर 2 में किए गए परिवर्तनों को सिंक करेगा

मैंने साझा कॉन्फ़िगरेशन की कोशिश की, जो बाइंडिंग को भी सिंक कर देगा और मैं नहीं चाहता कि जैसे वे संतुलित हैं। इसके अलावा मैं इसे काम करने के लिए सर्वरों में अनावश्यक बाइंडिंग जोड़ने से बचने की कोशिश कर रहा हूं।

मुझे कुछ वेबडेप्लोअर पॉवरशेल कमांड मिले, जो ऐसा लगता है कि यह फाइलों को सिंक करना चाहता है, हम फाइल को सिंक करने के लिए डीएफएस का उपयोग करते हैं।

सभी जो मैं करना चाहता हूं वह Server1 Applicationhost.config या web.config से Server2 में परिवर्तन सिंक करना है

जवाबों:


12

मिल गया (सुनिश्चित करें कि आप CMD ADMIN और Powershell ADMIN का उपयोग कर रहे हैं)

CMD का उपयोग करना, यह पॉवरशेल में काम नहीं करेगा कि यह सुनिश्चित क्यों नहीं है।

msdeploy -verb:sync -source:webserver,computerName=acd-pv01 -dest:webserver,computerName=acd-pv02 -skip:skipAction=Delete,objectName=binding -skip:skipAction=AddChild,objectName=binding

थोड़ा अवलोकन

कस्टम नियम रिप्लेसमेंट के बारे में ऑनलाइन कुछ पोस्ट हैं

हालाँकि प्रकार मान्य नहीं है, यह एक बग है जिसे अभी तक ठीक नहीं किया गया है।

तो आपके पास ऐड -Sip है: इसे काम करने और objectName = बाइंडिंग का उपयोग करने के लिए कमांड लाइन पर SkipAction

1 समस्या यह है कि यदि आपने एक नई साइट बनाई है, तो कॉन्फ़िगरेशन को बाध्यकारी जानकारी पर लाया गया है क्योंकि आपने इसे नहीं बताया है

तो फिक्स जो कि पॉवरशेल का उपयोग करता है

Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.applicationHost/sites/site[@name='SITENAME']/bindings" -name "." -value @{protocol='http';bindingInformation='IPADDRESS:80:SITENAME'}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.