किसी क्लाइंट के सर्वर पर एप्लिकेशन इंस्टॉल करते समय, मैं यह सुनिश्चित करना चाहता हूं कि क्लाइंट (या उनके लिए भविष्य डेवलपर, आदि) मेरे एप्लिकेशन की प्रतिलिपि नहीं बनाये और इसे अन्य डोमेन/सर्वर/स्थानीय सर्वर पर रखे।मैं अपने PHP एप्लिकेशन के उपयोगकर्ताओं को कैसे सत्यापित करूं?
मुझे लगता है कि मेरे आवेदन सर्वर मैं इस पर स्थापित पर चल रहा है यह पुष्टि कैसे करूं? मैं हर बार स्क्रिप्ट में किसी भी महत्वपूर्ण अंतराल को नहीं चाहता हूं, इसलिए मुझे लगता है कि 'हैंडशेक' विधि उचित नहीं है।
मैं स्क्रिप्ट मेरे अपने सर्वर पर हर बार इसे चलाता एक PHP पृष्ठ का अनुरोध कर सकता है सोच रहा था। यह मेरे सर्वर को उनकी सर्वर जानकारी और डोमेन नाम भेज सकता है, जो मेरी स्क्रिप्ट स्वीकृत ग्राहकों के डेटाबेस के खिलाफ जांच सकती है। अगर अनुरोध अमान्य है, तो मेरा सर्वर मुझे विवरण ईमेल करने का काम संभालता है ताकि मैं इसका अनुसरण कर सकूं। इससे क्लाइंट की स्क्रिप्ट को धीमा नहीं करना चाहिए क्योंकि यह प्रतिक्रिया की अपेक्षा नहीं कर रहा है, और तब भी जब तक मैं इसकी जांच कर सकता हूं और व्यक्तिगत रूप से इसका पालन नहीं कर लेता तब तक उनके 'अमान्य' सर्वर पर काम करेगा।
यदि यह सबसे अच्छा तरीका (या अगर कोई बेहतर है), क्या पीएचपी कॉल मैं अपने सर्वर की स्क्रिप्ट अनुरोध करने के लिए कर रही किया जाना चाहिए? file_get_contents
, curl
और इसी तरह की प्रतिक्रिया हमेशा प्रतिक्रिया प्राप्त करने लगती है, जिसकी मुझे आवश्यकता नहीं है।
अद्यतन
आप अपने सभी प्रतिक्रिया के लिए धन्यवाद। मैं पूरी तरह से समझता हूं कि PHP ओपन सोर्स है और इसे संपादित करने के लिए स्वतंत्र रूप से उपलब्ध होना चाहिए। मुझे शुरुआत में और अधिक स्पष्ट रूप से कहा जाना चाहिए था, लेकिन मेरे इरादे इस सत्यापन विधि के लिए मेरे लाइसेंस समझौते का उल्लंघन करने में मेरी सहायता करने के लिए थे। आवेदन लाइसेंस के तहत कवर किया गया है, लेकिन मैं इस चेक को भी शामिल करना चाहूंगा ताकि मैं अपने आवेदन के प्रारंभिक दुरुपयोग की निगरानी कर सकूं।
इसलिए, कोई भी अभी भी मेरा लाइसेंस उल्लंघन कर सकता है और शायद यह अनजान हो जाएगा, लेकिन अगर मैं इस स्क्रिप्ट को लागू करता हूं तो मुझे किसी भी 'आलसी लुटेरों' का लाभ होता है जो मेरे आवेदन को अलग नहीं करते हैं और फिसलने से पहले सत्यापनकर्ता को हटाते हैं यह।
क्या यह ऐसी स्क्रिप्ट के उपयोग को औचित्य देता है? यदि हां, तो curl मेरा सबसे अच्छा विकल्प है?
चूंकि PHP खुला स्रोत है, इसलिए किसी भी चेक को आसानी से हटाया जा सकता है। हालांकि सॉफ़्टवेयर के महत्वपूर्ण हिस्सों को मूल php मॉड्यूल (या समान) में स्थानांतरित करना संभव हो सकता है, जो कोड तब खुला नहीं है। इस तरह (खुली) स्क्रिप्ट को हमेशा मॉड्यूल का उपयोग करने की आवश्यकता होगी जो चेक भी करता है। वैसे भी, यह वही है जो मुझे लगता है कि संभव हो सकता है, हालांकि मुझे यकीन नहीं है कि यह वास्तव में काम करेगा (या प्रयास के लायक भी हो)। – poke
@ पोक: हमारे शब्दकोष में 'ओपन सोर्स' का अर्थ आमतौर पर 'स्वतंत्र रूप से उपलब्ध स्रोत' है, जिसके लिए पहुंच (और संभवतः परिवर्तन) को बढ़ावा दिया जाता है, जो वास्तव में यहां बिंदु नहीं है। यह निश्चित रूप से आपके ग्राहकों (जो इस मामले में इसके लिए भुगतान करते हैं) के लिए स्रोत का खुलासा किया गया है, और PHP भाषा का सी स्रोत स्वयं खुला स्रोत है। यहां अधिकांश लोग और मैं जो कहने की कोशिश कर रहा हूं उसे प्राप्त करता हूं, लेकिन आईएमएचओ यह शब्दों की कुछ खराब पसंद है। – Wrikken
@Wrikken: ठीक है, ओपन सोर्स का मतलब है कि स्रोत खुला और पूरी तरह से दिखाई देता है, जो स्पष्ट रूप से php के साथ मामला है (कम से कम उन लोगों के लिए जिनके पास सर्वर पहुंच है)। मुफ्त सॉफ्टवेयर हमेशा खुला स्रोत नहीं होता है और मुक्त स्रोत हमेशा मुक्त नहीं होता है। यह एक लाइसेंसिंग विवरण है जो अक्सर भ्रमित हो जाता है। – poke