आपको इंटरनेट पर कुछ बहुत लंबे URL (यूनिफ़ॉर्म रिसोर्स लोकेटर) मिलेंगे। कई साइटें आपके विज़िट के बारे में URL में जानकारी डालती हैं:भाषा, स्थान, पहचान, विशेष के लिए संदर्भ कोड, और कई अन्य आइटम जैसे आइटम। यह बहुत लंबे URL बनाता है।
प्रीमियम URL शॉर्टनर कोड कैन्यन . पर लंबे URL को छोटा बनाने का एक तरीका है। इस ट्यूटोरियल में, मैं आपको दिखाऊंगा कि अपने सिस्टम पर अपना खुद का यूआरएल शॉर्टनर कैसे सेट करें और इसका इस्तेमाल कैसे करें।
यूआरएल शॉर्टनर क्या है?
जब भी आप इंटरनेट ब्राउज़ करते हैं तो आप URL का उपयोग करते हैं। यह विशेष वेब पेज और सामग्री की पहचान करता है। चूंकि इनमें अक्सर किसी प्रपत्र या खोज इंजन के लिए पैरामीटर हो सकते हैं, इसलिए ये URL काफी बड़े हो सकते हैं।
https://tutsplus.com/tutorials/search/How%20to%20Draw%20Animals:%20Horses,%20Their%20Anatomy%20and%20Poses
यह URL "जानवरों को कैसे आकर्षित करें:घोड़े, उनकी शारीरिक रचना और पोज़" स्ट्रिंग के लिए Tuts+ वेबसाइट खोजने के लिए है। यह स्ट्रिंग 74 वर्ण लंबी है। मैंने ऐसे URL देखे हैं जो 200 वर्णों से अधिक लंबे हैं।
https://bit.ly/2oO8BqO
जब आप किसी URL को छोटा करने वाली सेवा का उपयोग करते हैं, जैसे bit.ly , आपको बहुत छोटा URL मिलता है। वही URL अब 15 वर्ण लंबा है। जब कोई इस लिंक को ब्राउज़ करता है, तो bit.ly सर्वर ब्राउज़र को पूर्ण URL पर पुनर्निर्देशित करता है। एक अलग यूआरएल पर अतिरिक्त लुकअप साइट लोड समय में देरी करता है, लेकिन ज्यादा नहीं।
डॉकर इंस्टॉल करना
स्थानीय सर्वर बनाने का सबसे आसान तरीका वर्चुअलाइज्ड वातावरण का उपयोग करना है। लेकिन एक पूर्ण सिस्टम वर्चुअलाइज़र चलाना बहुत संसाधन गहन है। डॉकटर टर्मिनल-आधारित सिस्टम के लिए एक न्यूनतम वर्चुअलाइज़र है। आप कम सिस्टम संसाधनों का उपयोग करके एक डॉकर कंटेनर (एक छोटा यूनिक्स सर्वर) चला सकते हैं।
अपने सिस्टम पर कंटेनर चलाने के लिए, आपको डॉकर . इंस्टॉल करना होगा . डॉकर . से अपने ऑपरेटिंग सिस्टम के लिए उचित डाउनलोड का चयन करें वेबसाइट।
डॉकर स्थापित होने के साथ, आपको अपने द्वारा बनाई जा रही वेब सेवा को देखने के लिए अपना सिस्टम तैयार करने की आवश्यकता है। ऐसा करने के लिए, आपको सिस्टम फ़ाइल को बदलना होगा। /etc/hosts
. में Linux या macOS सिस्टम के लिए और c:\windows\System32\drivers\etc\lmhosts
में फ़ाइल Windows सिस्टम के लिए फ़ाइल, यह कथन डालें:
127.0.0.1 s.dev
यह परिवर्तन https://s.dev
. के सभी संदर्भ बना देगा स्थानीय प्रणाली पर जाएं। यह सेवा को कॉन्फ़िगर करने का प्रयास करने से पहले एक उचित होस्टनाम देने के लिए किया जाता है।
अपना विकास क्षेत्र बनाने के लिए, एक निर्देशिका बनाएं और प्रीमियम URL शॉर्टनर . रखें इसमें zip फाइल करें और इसे एक्सपैंड करें। तब आपके पास यह निर्देशिका संरचना होनी चाहिए:
यह दस्तावेज़ main.zip
. फ़ाइल के साथ है . इस फ़ाइल को भी विस्तृत करें। एक बार जब आप इसका विस्तार कर लेते हैं, तो आपके पास यह निर्देशिका संरचना होनी चाहिए:
अंजीर>
main.zip
फ़ाइल में सेवा के लिए सभी स्रोत कोड फ़ाइलें और संसाधन शामिल हैं। यह वह निर्देशिका होगी जिसे आप डॉकर इंस्टेंस में जोड़ेंगे।
अब आपको फ़ौरिया से डॉकर लैंप स्टैक प्राप्त करने की आवश्यकता है। डॉकर के चलने के साथ, टर्मिनल में निम्नलिखित टाइप करें:
docker pull fauria/lamp
यह आपके डॉकर इंस्टॉलेशन में फ़ौरिया लैंप (लिनक्स, अपाचे, माईएसक्यूएल, और पीएचपी) स्टैक डाउनलोड करेगा। एक बार डाउनलोड हो जाने पर, आप इसके साथ कंटेनर बना सकते हैं:
docker run --rm --name linkshort -p 80:80 -e LOG\_STDOUT=true -e LOG\_STDERR=true -e LOG\_LEVEL=debug -v {{service source directory}}:/var/www/html fauria/lamp
{{service source directory}}
बदलें निर्देशिका के पूर्ण पथ के साथ जिसमें सभी स्रोत फ़ाइलें और संसाधन शामिल हैं। यह कमांड linkshort
. नाम का एक कंटेनर बनाता है जो पोर्ट 80 पर काम करता है और सभी त्रुटि और लॉग संदेशों को मानक आउट देता है।
अभी, हर बार जब आप कंटेनर को रोकते और फिर से लॉन्च करते हैं, तो आप अपनी सारी जानकारी खो देंगे। प्रत्येक रीबूट के साथ इसे संरक्षित करने के लिए आपको डेटाबेस जानकारी को अपने स्रोत कोड निर्देशिका में ले जाने की आवश्यकता है। टर्मिनल विंडो में, ये कमांड निष्पादित करें:
docker exec -i -t linkshort bash mkdir /var/www/html/data cp -R /var/lib/MySQL/* /var/www/html/data exit
पहला कमांड कंटेनर के लिए एक बैश शेल खोलता है। दूसरा कमांड डायरेक्टरी बनाता है data
आपके स्रोत कोड निर्देशिका में। कंटेनर स्रोत कोड निर्देशिका को /var/www/html
. के रूप में देखता है निर्देशिका। तीसरा कमांड डेटाबेस की जानकारी को उस डायरेक्टरी में कॉपी करता है। exit
कमांड आपको कंटेनर से बाहर निकालता है।
अब कंटेनर का उपयोग बंद कर दें:
docker stop linkshort
हर बार जब आप कंटेनर को रोकना चाहते हैं तो आप इस कमांड का उपयोग करेंगे।
अब, उचित डेटा निर्देशिका का उपयोग करके कंटेनर को पुनः आरंभ करने के लिए, इस कमांड का उपयोग करें:
docker run --rm --name linkshort -p 80:80 -e LOG\_STDOUT=true -e LOG\_STDERR=true -e LOG\_LEVEL=debug -v {{service source directory}}:/var/www/html -v {{service source directory}}/data:/var/lib/mysql fauria/lamp
इस बार आपने अपने कंप्यूटर पर अब संग्रहीत डेटाबेस डेटा का उपयोग करके मैरिएनडीबी सर्वर के साथ कंटेनर बनाया है। यह वह आदेश है जिसका उपयोग आप सेवा शुरू करने के लिए करेंगे। मैं कीबोर्ड विस्तारक का उपयोग करता हूं टाइपिनेटर मेरे लिए इसे टाइप करने के लिए।
अब, URL शॉर्टनर के लिए डेटाबेस बनाने की आवश्यकता है। आपको कंटेनर में एक खोल भी खोलना होगा। एक नए टर्मिनल उदाहरण में, निम्न कमांड टाइप करें:
docker exec -i -t linkshort bash
यह कमांड कंटेनर में बैश शेल बनाता है। यदि आपको कंटेनर में कुछ समायोजित करने की आवश्यकता है, तो यह वह आदेश है जिसका आप उपयोग करेंगे। इसके बाद, MarianDB प्रोग्राम में एक कमांड शेल खोलें:
mysql -u root
अब, आप MarianDB में डेटाबेस बना सकते हैं और वेब सर्वर को इसे एक्सेस करने की अनुमति दे सकते हैं:
create database urlshort; create user 'www-data'@'localhost' identified by '{{password}}'; grant all on urlshort.\* to 'www-data'@'localhost'; quit;
{{password}}
उस पासवर्ड पर सेट करने की आवश्यकता है जिसे आप डेटाबेस के उपयोगकर्ता को देना चाहते हैं। इसे याद रखें क्योंकि आप इसका उपयोग सेवा को कॉन्फ़िगर करने के लिए करेंगे।
कंटेनर में चल रही सेवा के साथ, अपने वेब ब्राउज़र को https://s.dev
. पर खोलें ।
यदि आपने कॉन्फ़िगरेशन किया है, तो आपको यह पृष्ठ देखना चाहिए। यह पृष्ठ URL शॉर्टनर सेवा की आवश्यकताओं और आपके सेटअप की स्थिति को दर्शाता है। डॉकर में फ़ौरिया कंटेनर का उपयोग करके, आप पहले से ही सभी निर्भरताएं पूरी कर चुके हैं। पृष्ठ के नीचे नीले बटन पर क्लिक करें।
दिखाया गया अगला पृष्ठ सेवा के लिए कॉन्फ़िगरेशन फ़ाइल निर्माता है। यह पृष्ठ आपको प्रोग्राम को आपके द्वारा पहले बनाए गए डेटाबेस के लिए नाम और पासवर्ड देने की अनुमति देता है।
जैसा कि ऊपर दिखाया गया है, आपको इन क्षेत्रों को भरना होगा। डेटाबेस होस्ट कंटेनर के लिए लोकलहोस्ट है। डेटाबेस का नाम urlshort
है , जिसे आपने सेटअप में बनाया है। डेटाबेस उपयोगकर्ता www-data
है , और पासवर्ड वह है जिसे आपने आरंभिक डेटाबेस सेटअप में असाइन किया था। डेटाबेस उपसर्ग सेवा के लिए बनाए गए प्रत्येक डेटाबेस का आरंभिक नाम है। मैंने short_
का इस्तेमाल किया . स्थापना प्रोग्राम सुरक्षा कुंजी सेट करता है . भविष्य के संदर्भ के लिए दी गई कुंजी की एक प्रति अपने पास रखें।
यदि आप इसे किसी वर्चुअल प्राइवेट सर्वर (VPS) पर स्थापित करते हैं, तो ये मान उस सेवा के अनुसार होंगे। कुछ वही होंगे, और कुछ बदलेंगे।
उचित जानकारी के साथ, चरण 3 पर जाने के लिए पृष्ठ के निचले भाग में नीला बटन दबाएं।
मूल कॉन्फ़िगरेशन स्क्रीन आपको व्यवस्थापक उपयोगकर्ता नाम, ईमेल और पासवर्ड सेट करने की अनुमति देती है। इन्हें उन मूल्यों पर सेट करें जो आपसे संबंधित हैं। साइट URL https://s.dev
. पर सेट करने की आवश्यकता है जैसा कि आप अपने hosts
. में सेट अप करते हैं फ़ाइल पहले। एक बार सेट हो जाने पर, स्क्रीन के नीचे नीले बटन को दबाएं।
अगली स्क्रीन आपको बताती है कि सेवा अब सेट हो गई है। नीले बटन को दबाएं जो कहता है Delete install.php
. यह वास्तविक वेब सर्वर पर उपयोग करने के लिए एक सुरक्षा सुविधा है, लेकिन स्थानीय स्थापना के लिए इसकी आवश्यकता नहीं है। हालांकि, इंस्टॉलेशन तब तक पूरा नहीं होगा जब तक आप इसे पूरा नहीं कर लेते।
बधाई - सेवा कार्यशील है! आपको ऊपर दी गई स्क्रीन देखनी चाहिए। यदि आप लंबा url पेस्ट करें . नामक इनपुट फ़ील्ड में एक लंबा URL देते हैं और फिर नीला बटन दबाएं छोटा करें , आपको उपयोग करने के लिए एक छोटा URL मिलेगा। यूआरएल भविष्य के संदर्भ के लिए डेटाबेस में भी होगा। यह सुविधा एक बेहतरीन बुकमार्कर बनाती है।
एपीआई का उपयोग करना
अब जब आपकी URL शॉर्टनर सेवा चल रही है, तो आप इसका अच्छा उपयोग करना चाहेंगे। लेकिन हमेशा एक वेब पेज खोलना, यहां तक कि एक स्थानीय पेज खोलना, आपको धीमा कर देगा। आपको इसे और तेज करने की जरूरत है। यहीं पर एपीआई (एप्लिकेशन प्रोग्रामिंग इंटरफेस) का उपयोग करना मददगार होता है। आप एपीआई के लिए पूरा दस्तावेज़ देख सकते हैं।
सेवा चलने के साथ, पेज खोलें https://s.dev/user/settings
।
इस पेज को देखने के लिए आपको अपने खाते में लॉग इन करना होगा। साइडबार में नीचे दाईं ओर, आप देखेंगे आपकी API कुंजी: अल्फा-न्यूमेरिक नंबर के साथ। उस नंबर को कॉपी करके सेव कर लें। यह नंबर एपीआई को एक्सेस देता है।
एपीआई का उपयोग करने के लिए, आप एक रूबी . बना सकते हैं इसे एक्सेस करने का कार्यक्रम। MacOS और Linux पर, रूबी आमतौर पर पहले से इंस्टॉल होती है। विंडोज़ पर, आपको इसे इंस्टॉल करना होगा।
रूबी में एक छोटा लिंक बनाने के लिए न्यूनतम कार्यक्रम है:
require 'net/http' require 'json' API = '{YourAPIKey}' short = JSON.parse(Net::HTTP.get('s.dev', '/api?api=' + API + '&url=' + ARGV[0])) if short["error"] == 0 then print short["short"] else print "An error happened: " print short["error"] print "\n" end
स्क्रिप्ट को shortener.rb
. नाम की फाइल में सेव करें , {YourAPIKey}
. को बदलें एपीआई कुंजी के साथ जिसे आपने पहले कॉपी किया था, और कमांड लाइन में निम्नलिखित चलाएँ:
ruby shortener.rb 'google.com'
आपको उस URL के लिए एक छोटा लिंक मिलना चाहिए। यह संक्षिप्त URL बनाता है, लेकिन फिर भी सुविधाजनक नहीं है।
पॉपक्लिप एक्सटेंशन बनाना
Mac पर, पॉपक्लिप हाइलाइट किए गए टेक्स्ट को प्रोसेस करने के लिए एक बहुत छोटा प्रोग्राम है। संक्षिप्त लिंक बनाना आसान बनाने के लिए, आप एक पॉपक्लिप एक्सटेंशन बनाएंगे। मैं एक्सटेंशन बनाने के बारे में सब कुछ नहीं बताऊंगा, लेकिन आप इसे करने के यांत्रिकी के बारे में मेरे ट्यूटोरियल पॉपक्लिप:स्क्रिप्टिंग एक्सटेंशन में पढ़ सकते हैं। ।
PremiumURLShortener.popclipext
. नामक एक पॉपक्लिप एक्सटेंशन बनाएं . Config.plist
के लिए निम्न का उपयोग करें एक्सटेंशन निर्देशिका के अंदर फ़ाइल:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Actions</key> <array> <dict> <key>After</key> <string>paste-result</string> <key>Image File</key> <string>PremiumURLShortener.png</string> <key>Script Interpreter</key> <string>/usr/bin/ruby</string> <key>Shell Script File</key> <string>PremiumURLShortener.rb</string> <key>Title</key> <string>Shortener</string> </dict> </array> <key>Options</key> <array> <dict> <key>Option Identifier</key> <string>apikey</string> <key>Option Type</key> <string>string</string> <key>Option Label</key> <string>API Key: </string> </dict> </array> <key>Credits</key> <array> <dict> <key>Name</key> <string>Richard Guay</string> <key>Link</key> <string>https://customct.com</string> </dict> </array> <key>Extension Description</key> <string>Create shortened URLs with PremiumURLShortener locally</string> <key>Extension Identifier</key> <string>com.customct.popclip.extension.premiumurlshortener</string> <key>Extension Name</key> <string>Shortener</string> <key>Required Software Version</key> <integer>701</integer> </dict> </plist>
फिर PremiumURLShortener.rb
. नामक एक्सटेंशन के लिए स्क्रिप्ट फ़ाइल बनाएं और इसमें यह कोड डालें:
#!/usr/bin/ruby require 'net/http' require 'json' Encoding.default_internal = Encoding::UTF_8 Encoding.default_external = Encoding::UTF_8 input = ENV['POPCLIP_TEXT'].to_s.strip() API = ENV['POPCLIP_OPTION_APIKEY'].to_s.strip() short = JSON.parse(Net::HTTP.get('s.dev', '/api?api=' + API + '&url=' + input)) if short["error"] == 0 then print short["short"] else print "An error happened: " print short["error"] print "\n" end
जब आप नया एक्सटेंशन लोड करते हैं, तो यह API कुंजी मांगेगा। एक बार जब आप इसे API कुंजी दे दें और ठीक है press दबाएं , यह पॉपक्लिप में प्रयोग करने योग्य है।
जब आप किसी लिंक का चयन करते हैं, तो पॉपक्लिप विकल्पों की सूची के साथ खुल जाएगा। फिर आप छोटा करें . चुनें विकल्प। यह कुछ समय के लिए सोचेगा और फिर उचित छोटा URL पेस्ट करेगा। पूर्ण विस्तार इस ट्यूटोरियल के डाउनलोड में है। अब, आप और भी बहुत कुछ करने के लिए तैयार हैं!
निष्कर्ष
न केवल अब आपके पास एक निजी यूआरएल शॉर्टनर है, आप यह भी जानते हैं कि स्थानीय कंटेनर चलाने के लिए डॉकर का उपयोग कैसे करें, आपके द्वारा उपयोग किए जाने वाले यूआरएल का ट्रैक रखने का एक आसान तरीका और संक्षिप्त लिंक बनाने का एक तरीका।
आप रूबी स्क्रिप्ट का उपयोग अल्फ्रेड 3 . के साथ कर सकते हैं या कीबोर्ड मेस्ट्रो भी। अपनी नई सेवा का उपयोग करने और इसकी अन्य सुविधाओं के साथ प्रयोग करने का आनंद लें।