2015-09-02 6 views
11

मुझे किसी डिवाइस पर अपने स्थानीय देव पर्यावरण (एमएएमपी प्रो) तक पहुंचने की आवश्यकता है। मुझे यह मेरी गैर-एसएसएल साइट के लिए ठीक काम मिल गया है, लेकिन मैं इसे अपनी साइट के लिए काम नहीं कर सकता जिसके लिए एसएसएल की आवश्यकता है।किसी डिवाइस और चार्ल्स प्रॉक्सी और एसएसएल पर स्थानीय देव पर्यावरण तक पहुंचें?

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

मै मैम्प प्रो में local.site1.com के लिए पहले से ही वर्चुअल होस्ट एंट्री सेट कर चुका हूं। वह यूआरएल अब मेरे स्थानीय देव पर्यावरण और डिवाइस दोनों पर काम करता है।

मैं https://local.site2.com पर अपने एसएसएल साइट पर जाने के लिए इस देव पर्यावरण पर काम करता है लेकिन डिवाइस इस संदेश देता का प्रयास करें:

Safari cannot open the page. 

त्रुटि थी: "There was a problem communicating with the secure web proxy server (HTTPS).".

चार्ल्स प्रॉक्सी मानक प्रतीत हो रहा है मेजबान फ़ाइल में निर्दिष्ट डोमेन नाम का उपयोग कर किसी डिवाइस पर स्थानीय विकास वातावरण तक पहुंचने का तरीका, हालांकि मैं काम करने वाले किसी भी समाधान का उपयोग करने में प्रसन्न हूं।

उत्तर

1

निश्चित रूप से ओएसएक्स/आईओएस आपके द्वारा इंजेक्ट किए गए प्रमाण को पसंद नहीं करता है क्योंकि यह "विश्वसनीय" स्रोत से नहीं आता है और यह सीधे कनेक्शन को मार देता है।

आप अपने प्रमाण को Apple Configurator के साथ विश्वसनीय स्रोत से आने के रूप में परिभाषित कर सकते हैं।

source

संपादित

  1. एप्पल कौन्फ़िगरेटर एप्लिकेशन और एक नया कॉन्फ़िग फ़ाइल (तैयार) पैदा करते हैं।
  2. स्थापना टैब पर "आईओएस अपडेट करें" अक्षम करें क्योंकि हम उन सभी को नहीं जाना चाहते हैं। हम सिर्फ प्रमाण इंजेक्ट करना चाहते हैं।
  3. फिर आप "स्थापना" टैब में जाते हैं और "सेटिंग्स" के अंतर्गत आप प्रमाणपत्र का चयन करते हैं। (चूंकि हम इस मोबाइल कॉन्फ़िगरेशन में .pem फ़ाइल को शामिल नहीं कर सकते हैं, इसलिए हमें अपने रूट प्रमाण को एक .cert फ़ाइल में कनवर्ट करना होगा और चूंकि यह पहले से ही कीचेन ऐप में है, बस इसे एक .cert फ़ाइल के रूप में कहीं भी निर्यात करें जहां आप आसानी से आसानी से कर सकते हैं इसे ढूंढें।
  4. ऐप्पल कॉन्फ़िगरेटर ऐप में वापस आप केवल निर्यात किए गए .cert रूट प्रमाणपत्र का चयन करते हैं और मोबाइल कॉन्फ़िगर को यूएसबी केबल के माध्यम से अपने फोन/डिवाइस पर धक्का देते हैं। (आपको यह स्वीकार करने के लिए कहा जाएगा कि यह इंस्टॉल हो रहा है क्योंकि यह एक है "अविश्वसनीय" रूट प्रमाण और बाद में आप डिवाइस पर .pem प्रमाणपत्र स्थापित करने के लिए निर्माता here द्वारा समझाए गए चरणों के माध्यम से जाते हैं।
  5. एक बार वहां आप प्रॉक्सी सेट कर सकते हैं जैसे आप http प्रॉक्सी के लिए करेंगे नेटवर्किंग सेटिंग्स और आईओएस 8
  6. पर सभी टीएलएस एन्क्रिप्टेड यातायात प्रवाह देखें
+0

यह काम नहीं कर रहा है, लेकिन मुझे यकीन नहीं है कि अगर मैंने कुछ गलत किया है। ऐप्पल कॉन्फ़िगरेटर Ive के साथ सेटिंग्स के तहत एक नया नाम बनाया गया है, अद्यतन आईओएस डिवाइस को अद्यतन करने के लिए सेट नहीं है। सेटअप Iive के तहत प्रमाण पत्र जोड़ा गया है कि मेरा localhost उपयोग कर रहा है। सेटिंग्स में वापस Ive ने मेरे डिवाइस पर प्रोफ़ाइल स्थापित की है (यूएसबी के माध्यम से संलग्न)। मैं अपने डिवाइस पर कोई अंतर नहीं देख सकता और पेज अभी भी लोड नहीं हो रहा है। – Evans

+0

शामिल चरणों के विवरण के साथ संपादन देखें। – Pat

4

चार्ल्स का उपयोग कर रहे हैं, तो आप भी अपने प्रमाण पत्र स्थापित करना होगा:

आईओएस 4 और बाद में डिवाइस पर, चार्ल्स उपयोग करने के लिए, और फिर http://www.charlesproxy.com/getssl ब्राउज़ प्रमाण पत्र स्थापित करने के लिए अपने HTTP प्रॉक्सी निर्धारित किया है।

+0

Ive प्रमाणपत्र स्थापित किया लेकिन सफारी अभी भी पृष्ठ खोल नहीं सकता है। – Evans

7

क्या आपने इसे रीफ्रेश करने या पुनरारंभ करने का प्रयास किया है?हो सकता है कि आप HTTP प्रॉक्सी को मैन्युअल रूप से सेट करना पुन: जांचना चाहें और पुनः जांच लें कि आपकी स्थानीय देव मशीन और आपकी डिवाइस एक ही वाईफाई नेटवर्क पर हैं। साथ ही, सुनिश्चित करें कि आपका आईपी सही है और प्रॉक्सी चल रहा है।


नोट है कि अगर आप अपने डेटा के लिए SSL का उपयोग का अनुरोध करता है:

जाओ प्रॉक्सी के लिए -> प्रॉक्सी सेटिंग्स -> एसएसएल -> चेक "एसएसएल सक्षम करें" और के लिए मेजबान और बंदरगाह को जोड़ने के अपने अनुरोध

-आप भी प्रॉक्सी ड्रॉप-डाउन से डेस्कटॉप और वेब प्रॉक्सी अक्षम कर सकते हैं तो आप बेहतर अपने अनुप्रयोग यातायात अलग कर सकते हैं तो


आप


सुनिश्चित करने के लिए सभी यातायात वाई-फाई/माध्यम से चलाया जाता चार्ल्स प्रॉक्सी फिर चार्ल्स का शुभारंभ और शीर्ष विंडो में "अनुक्रम" टैब में स्विच सेलुलर डाटा बंद करने के लिए प्रत्येक कॉल और स्थिति देखने के लिए चाहते हो सकता है क्योंकि वे वास्तविक समय में प्रतिक्रिया आकार और अवधि सहित बनाये जाते हैं। निचले फलक में विवरण देखने के अनुरोध पर क्लिक करें: अवलोकन, अनुरोध, प्रतिक्रिया & सारांश।

सुनिश्चित करें कि आप विभिन्न डेटा प्रकारों के विकल्पों का पता लगाएं। उदाहरण के लिए, यदि आपकी प्रतिक्रिया एक छवि है, तो आप वास्तविक छवि और आयाम देख सकते हैं। यदि आपका ऐप जेएसओएन का उपभोग करता है, तो आपके पास JSON Tree Navigator का विकल्प होता है, या आप "अनुक्रम" टैब में अनुरोध पर राइट-क्लिक करके "प्रतिक्रिया कॉपी" कर सकते हैं। परिणामों को आसानी से पढ़ने के लिए http://www.uize.com/examples/json-prettifier.html जैसे कुछ चिपकाएं।

1.Is अपने अनुप्रयोग डेटा अनुरोधों की उचित राशि के स्टार्टअप समय और पहले से लाना संतुलित करने के लिए कर रही है, "अगले पृष्ठ" तेजी लाने के लिए:


शुरुआत के दौरान, इन जांच?

2. क्या कोई अनुरोध आवश्यक से अधिक डेटा प्राप्त कर रहा है?

3.Are प्रतिक्रिया उच्च बार सर्वर विन्यास या एक खराब प्रदर्शन बैकएंड


जांच इन ऐप्स उपयोग के दौरान की वजह से:

वहाँ 1.Is कि धीमी है एक आम नेविगेशन पथ और लॉन्च पर प्री-फ़ेचिंग से लाभ हो सकता है?

2. क्या डेटा वास्तव में एक नया डेटा अनुरोध शुरू करने के बजाय कैश से आ रहा है?

3. क्या कोई ट्रैकिंग डेटा भेजा जा रहा है (उदा। Omniture, Google Analytics, या अन्य तृतीय-पक्ष सेवाएं), और यदि ऐसा है तो यह ठीक से भेजा गया है? क्या कोडिंग त्रुटि के कारण गलती से या बार-बार कोई अनुरोध किया जा रहा है?

4. यदि आप वीडियो की सेवा करते हैं, तो उचित एन्कोडिंग/प्रारूप चयनित है? (चार्ल्स वायरलेस फोन कनेक्शन की नकल करने के लिए गति को थ्रॉटल कर सकता है।) क्या डिवाइस डिवाइस के लिए उचित आकार में हैं?

2

चार्ल्स प्रॉक्सी

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

देखें: http://www.charlesproxy.com/documentation/proxying/ssl-proxying/

और

http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/

एक बार मूल CA आपका ऐप इंस्टॉल किया जाता है और सफ़ारी ब्राउज़र में बनाया साइट का उपयोग करने में सक्षम होना चाहिए।

एक और वैकल्पिक

एक और तरीका है कि मैं अतीत में इस किया है वास्तव में dnsmasq जो एक बहुत हल्के DNS सर्वर नेम सर्वर के लिए अपने सिस्टम के स्थानीय/etc/hosts फाइल और भी आगे पढ़ जाएगा उपयोग करने के लिए है resolv.conf में जब यह आपकी मेजबान फ़ाइल में नहीं है।

आप अपने मैकबुक/लैपटॉप, (विंडोज़ पर साइगविन) पर मैकपोर्ट्स के माध्यम से dnsmasq इंस्टॉल कर सकते हैं, या यह आमतौर पर एक सुंदर मानक वितरण पैकेज है जिसे आप चल रहे हैं * nix।

एक बार जब आपके पास dnsmasq चल रहा है तो आप नाम संकल्प के लिए अपने dnsmasq सर्वर को इंगित करने के लिए सेटिंग/वाईफ़ाई के माध्यम से बस अपने डिवाइस को सेट कर सकते हैं। जब तक आपकी साइट आपके/etc/hosts में है और आपके पास आपके होस्ट आधारित फ़ायरवॉल ब्लॉकिंग पोर्ट 53 (DNS) नहीं है तो आपको अच्छा होना चाहिए।

मुझे लगता है कि मैं ज्यादातर समय dnsmasq का उपयोग कर रहा हूं लेकिन चार्ल्स प्रॉक्सी उपयोगी हो गया था जब मैं वास्तव में ट्रैक करने की कोशिश कर रहा था कि मेरे ऐप से कितना डेटा इस्तेमाल किया जा रहा था (मेरे लिए एक विशिष्ट आवश्यकता यह थी कि ऐप जो एक तरह का था कियोस्क की जो प्रति दिन 3 एमबी उपयोग के तहत रहने की आवश्यकता है, इसलिए हमें विशाल सेलुलर बिल नहीं मिला)।

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