Koding Tutorial – Cloud Based Development Environment কোডিং – ক্লাউড ডেভেলপমেন্ট

এই স্ক্রিনকাস্টে দেখানো হয়েছে Koding ওয়েব সার্ভিসের মাধ্যমে কিভাবে একটি ক্লাউড বেজড ডেভেলপমেন্ট এনভায়রনমেন্ট তৈরি করা যায় এবং কোন রকম ফিজিক্যাল কম্পিউটার ছাড়াও অন দ্য গো -তে ডেভেলপমেন্ট চালিয়ে নেয়া যায় 🙂

এঞ্জিনএক্স, পিএইচপি, মাইএসকিউএল এর ইনস্টলেশন, কনফিগারেশন এবং সার্ভার ব্লক (ভার্চুয়াল হোস্ট) তৈরি

সার্ভারের প্রাথমিক এবং ব্যাসিক কনফিগারেশন

1. নতুন তৈরি হওয়া সার্ভারে root ইউজার হিসেবে লগইন করুন নিচের কমান্ড দিয়ে

 ssh root@SERVER_IP_ADDRESS 

2. নতুন একটি ইউজার তৈরি করতে কমান্ড দিন নিচের মত। এখানে নতুন ইউজারের নাম demo

 adduser demo 

3. নতুন ইউজারকে root ইউজারের সমতুল্য অধিকার দিতে তাকে sudo গ্রুপে যুক্ত করুন

 gpasswd -a demo sudo 

4. পাসওয়ার্ডের পরিবর্তে পাবলিক কি দিয়ে অথেনটিকেশন এর ব্যবস্থা

  • আপনার লোকাল মেশিনে এক জোড়া কি তৈরি করতে কমান্ড দিন (~/.ssh ডিরেক্টরির মধ্যে তৈরি করা ভালো)
     ssh-keygen 

  • পাবলিক কি এর কন্টেন্টকে রিমোট সার্ভারে কপি করতে প্রথম এর কন্টেন্ট প্রিন্ট করতে কমান্ড দিন

     cat ~/.ssh/id_rsa.pub 

    এরপর স্বাভাবিকভাবে পুরো আউটপুট সিলেক্ট করে কপি করুন

  • সার্ভারে root ইউজার হিসেবে লগডইন থাকা অবস্থায় নিচের কমান্ড দিয়ে নতুন ইউজার হিসেবে লগইন করুন

     su - demo 

    এ অবস্থায় আপনি demo ইউজারের home ডিরেক্টরিতে থাকবেন

  • demo ইউজারের home ডিরেক্টরিতে .ssh নামের একটি ডিরেক্টরি তৈরি করতে এবং সেটার যথাযথ পারমিশন সেট করতে নিচের দুটো কমান্ড পর পর দিন:

     mkdir .ssh 

     chmod 700 .ssh 

  • ওই ডিরেক্টরির মধ্যে authorized_keys নামের ফাইল তৈরি/এডিট করুন

     vi .ssh/authorized_keys 

    এবার লোকাল মেশিনের পাবলিক কি এর কপি করা ভ্যালু এখানে পেস্ট করে ফাইলটি সেভ করুন

  • নতুন তৈরি হওয়া authorized_keys ফাইলের যথাযথ পারমিশন সেট করুন

     chmod 600 .ssh/authorized_keys 

  • এবার নিচের কমান্ড দিয়ে demo ইউজার থেকে লগআউট করে root ইউজারে সুইচ ব্যাক করুন:

     exit 

5. SSH কনফিগার করে root লগইন ডিস্যাবল করা

  • কফিগারেশন ফাইলটি ওপেন করার জন্য কমান্ড দিনঃ
     vi /etc/ssh/sshd_config 
  • নিচের লাইনটি খুঁজে বের করে এর ভ্যালু হিসেবে no সেট করে দিনঃ
     PermitRootLogin no 
  • SSH রিস্টার্ট করুনঃ
     service ssh restart 

##nginx, MySQL, PHP ইন্সটলেশন

1. ওয়েব সার্ভার হিসেবে Nginx ইন্সটল করা

  • ইন্সটলেশনঃ
     sudo apt-get update 
     sudo apt-get install nginx 

  • ইন্সটলেশন টেস্ট করতে নিচের ইউআরএল ব্রাউজ করুনঃ

     http://server_domain_name_or_IP 

2. DBMS হিসেবে MySQL ইন্সটল করা

  • ইন্সটলেশনঃ
     sudo apt-get install mysql-server php5-mysql

  • MySQL এর প্রয়োজনীয় ডিরেক্টরি স্ট্রাকচার তৈরিঃ

     sudo mysql_install_db 

  • একটি সাধারণ সিকিউরিটি স্ক্রিপ্ট রান করে কিছু ডিফল্ট এবং ইন্সিকিউরড সেটিং চেক/পরিবর্তন করাঃ

     sudo mysql_secure_installation 

3. fpm টুলস

  • php5-fpm, যার পূর্ণ নাম “fastCGI process manager” এর ইন্সটলেশনঃ
     sudo apt-get install php5-fpm 

  • PHP প্রসেসর এর ব্যাসিক কনফিগারেশনঃ

    • কফিগারেশন ফাইল ওপেন করুনঃ
       sudo nano /etc/php5/fpm/php.ini 

    • নিচের লাইনে শূন্য সেট করে পরিবর্তন আনুনঃ

       cgi.fix_pathinfo=0 

    • php5-fpm কে রিস্টার্ট করুনঃ

       sudo service php5-fpm restart 

4. PHP প্রসেসরকে ব্যাবহারের জন্য Nginx এর ব্যাসিক কনফিগারেশন

  • Nginx এর ডিফল্ট সার্ভার ব্লক কনফিগারেশন ফাইল ওপেন করুনঃ
     sudo nano /etc/nginx/sites-available/default 

  • যথাযথ এবং সাধারণ কিছু পরিবর্তন শেষে ফাইলটি নিচের মত হওয়া বাঞ্ছনীয়ঃ

    	server {
    	    listen 80 default_server;
    	    listen [::]:80 default_server ipv6only=on;
    	
    	    root /usr/share/nginx/html;
    	    index index.php index.html index.htm;
    	
    	    server_name server_domain_name_or_IP;
    	
    	    location / {
    	        try_files $uri $uri/ =404;
    	    }
    	
    	    error_page 404 /404.html;
    	    error_page 500 502 503 504 /50x.html;
    	    location = /50x.html {
    	        root /usr/share/nginx/html;
    	    }
    	
    	    location ~ \.php$ {
    	        try_files $uri =404;
    	        fastcgi_split_path_info ^(.+\.php)(/.+)$;
    	        fastcgi_pass unix:/var/run/php5-fpm.sock;
    	        fastcgi_index index.php;
    	        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    	        include fastcgi_params;
    	    }
    	}
    	

  • Nginx ওয়েব সার্ভারকে রিস্টার্ট করুনঃ

     sudo service nginx restart 

5. একটি PHP ফাইল দিয়ে সেটআপ টেস্ট করা

  • Nginx এর ডকুমেন্ট রুটে info.php নামের একটি নতুন ফাইল তৈরি করুনঃ
     sudo nano /usr/share/nginx/html/info.php 

  • ওই নতুন ফাইলের কন্টেন্ট/কোড হিসেবে নিচের ব্লক পেস্ট করুনঃ

                <?php
    
                    phpinfo();
    
                ?>
    	
    	

  • এবার ব্রাইজারে নিচের অ্যাড্রেস ব্রাউজ করুনঃ

     http://server_domain_name_or_IP/info.php 

  • যদি আপনি উপরের স্টেপে বলা অ্যাড্রেস এ গিয়ে পিএইচপি এর কনফিগারেশন সম্পর্কিত (এই সার্ভার মোতাবেক) একটি ওয়েব পেজ দেখতে পান তাহলে ধরে নেয়া যায় সব কিছু ঠিক ঠাক মতই হয়েছে। এখনকার মত info.php ফাইলকে রিমুভ করুনঃ

     sudo rm /usr/share/nginx/html/info.php 

##Nginx সার্ভার ব্লক (ভার্চুয়াল হোস্ট) সেটআপ

1. একাধিক সাইটের জন্য প্রয়োজনীয় ডকুমেন্ট ডিরেক্টরি তৈরি করা

  • সাধারণভাবে Ubuntu 14.04 এ ইন্সটল হওয়া Nginx এর একটি ডিফল্ট সার্ভার ব্লক এনাবেল থাকে। এটার কনফিগারেশনে /usr/share/nginx/html ডিরেক্টরি থেকে ডকুমেন্ট ডেলিভারির কথা বলা থাকে। আমরা এই লোকেশন ব্যবহার না করে বরং /var/www ডিরেক্টরিকে ব্যবহার করবো আমাদের একাধিক সাইটের কন্টেন্ট রাখার জন্য.
    • নিচের মত করে দুটো ডিরেক্টরি তৈরি করুনঃ
       sudo mkdir -p /var/www/example.com/html 

       sudo mkdir -p /var/www/test.com/html 

    • অ্যাক্সেস পারমিশন ঠিক করে সাধারণ ইউজারকে দিয়ে দিনঃ

       sudo chown -R $USER:$USER /var/www/example.com/html 

       sudo chown -R $USER:$USER /var/www/test.com/html 

    • ওয়েব রুট ডিরেক্টরির পারমিশন নিচের মত করে সেট করুনঃ

       sudo chmod -R 755 /var/www 

2. উদাহরণ হিসেবে প্রত্যেকটি সাইটের জন্য একটি করে ওয়েব পেজ তৈরি

  • প্রথম সাইটের জন্য একটি index.html তৈরি করুনঃ
    • ফাইল তৈরি করুনঃ
       nano /var/www/example.com/html/index.html

    • ফাইলের কন্টেন্ট হিসেবে নিচের কোড ব্যবহার করতে পারেনঃ

      <html>
          <head>
      	    <title>Welcome to Example.com!</title>
          </head>
          <body>
      	    <h1>Success!  The example.com server block is working!</h1>
          </body>
      </html>
      		

  • দ্বিতীয় সাইটের জন্যও আগের মতই একটি সাধারণ পেজ হলেই চলবে। আর তাই আগের ফাইলকে কপি করে দ্বিতীয় সাইটের জন্য ঠিক করা ডকুমেন্ট রুটে রাখুন

    • আগের ফাইলকে কপি করুনঃ
       cp /var/www/example.com/html/index.html /var/www/test.com/html/ 

    • নতুন ফাইলকে একটু মডিফাই করে পরিবর্তন আনুন যাতে চিন্তে সুবিধা হয়ঃ

       nano /var/www/test.com/html/index.html 

    • নিচের মত কন্টেন্ট ব্যবহার করতে পারেনঃ

      		<html>
      		    <head>
      		        <title>Welcome to Test.com!</title>
      		    </head>
      		    <body>
      		        <h1>Success!  The test.com server block is working!</h1>
      		    </body>
      		</html>
      		

3. প্রত্যেক ডোমেইনের জন্য Nginx এ সার্ভার ব্লক তৈরি

  • প্রথম সাইটের জন্য প্রথম সার্ভার ব্লক তৈরি করতে ডিফল্ট ফাইলটিকেই কপি করতে পারেন
    • কপি করুনঃ
       sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com 

    • নতুন ফাইলে প্রয়োজনীয় পরিবর্তন আনতে নিচের মত কমান্ড দিনঃ

       sudo nano /etc/nginx/sites-available/example.com 

    • পরিবর্তন আনা শেষে ফাইলের কন্টেন্ট নিচের মত করে নিনঃ

      		server {
      		    listen 80 default_server;
      		    listen [::]:80 default_server ipv6only=on;
      		
      		    root /var/www/example.com/html;
      		    index index.html index.htm;
      		
      		    server_name example.com www.example.com;
      		
      		    location / {
      		        try_files $uri $uri/ =404;
      		    }
      		}	
      		

  • দ্বিতীয় সাইটের জন্য দ্বিতীয় সার্ভার ব্লক তৈরি

    • কাজের সুবিধার জন্য প্রথম সার্ভার ব্লক ফাইলকেই কপি করুনঃ
       sudo cp /etc/nginx/sites-available/example.com /etc/nginx/sites-available/test.com 

    • নতুন ফাইলে প্রয়োজনীয় পরিবর্তন আনতে নিচের মত কমান্ড দিনঃ

       sudo nano /etc/nginx/sites-available/test.com 

      এই ফাইলের listen ডিরেক্টীভের দিকে একটু মনোযোগ দিতে হবে। যদি প্রথম ফাইলে default_server অপশন এনাবেল থাকে, তাহলে এই ফাইলে সেটি থাকা চলবে না। উপরন্তু এই ফাইলে ipv6only=on কেও রাখা যাবে না।

    • অর্থাৎ প্রয়োজনীয় পরিবর্তন শেষে নিচের মত হয়েছে কিনা লক্ষ্য করুনঃ

      		server {
      		    listen 80;
      		    listen [::]:80;
      		
      		    root /var/www/test.com/html;
      		    index index.html index.htm;
      		
      		    server_name test.com www.test.com;
      		
      		    location / {
      		        try_files $uri $uri/ =404;
      		    }
      		}
      		

4. সার্ভার ব্লক এনাবেল এবং সার্ভার রিস্টার্ট

  • নতুন তৈরি হওয়া দুটি সার্ভার ব্লককে এনাবেল করতে এগুলোর সিম্বোলিক লিঙ্ক তৈরি করে sites-enabled ডিরেক্টরিতে রাখুনঃ
     sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ 

     sudo ln -s /etc/nginx/sites-available/test.com /etc/nginx/sites-enabled/ 

  • আগের জমা থাকা ডিফল্ট সার্ভার ব্লককে ডিজ্যাবল রাখতে সেই ফাইলকে শুধুমাত্র sites-enabled ডিরেক্টরি থেকে রিমুভ করুনঃ

     sudo rm /etc/nginx/sites-enabled/default 

  • আবার Nginx কনফিগারেশন ফাইলকে আপডেট করুন

    • ফাইল ওপেন করুনঃ
       sudo nano /etc/nginx/nginx.conf 

    • নিচের লাইনকে খুঁজে বের করে সেটিকে আনকমেন্ট করুন যাতে স্টেটমেন্টটি একটিভ থাকেঃ

       server_names_hash_bucket_size 64; 

    • Nginx রিস্টার্ট করুনঃ

       sudo service nginx restart 

5. ফলাফল টেস্ট করা

সার্ভার ব্লক ঠিক ঠাক কাজ করছে কিনা তা চেক করতে নিচের দুটো সাইটের অ্যাড্রেস ভিজিট করুনঃ

 http://example.com 

 http://test.com 

এসো নিজে করি – এঞ্জিনএক্সের সাথে পিএইচপি এফপিএম ফাস্টসিজিআই মডিউল ইন্টিগ্রেশন

The Storyteller

আমরা এর আগের পর্বে দেখেছিলাম কিভাবে এঞ্জিনএক্স ইনস্টল, আপগ্রেড এবং কনফিগার করতে হয়, এবং কিভাবে স্ট্যাটিক ফাইল সার্ভ করতে হয়। এই পর্বে আমরা আলোচনা করবো কিভাবে আমরা এঞ্জিনএক্সের মাধ্যমে পিএইচপি ফাইল সার্ভ করতে হয়।

গত পর্বের শেষে আমাদের ডিফল্ট সার্ভার ব্লক ফাইলটি (/etc/nginx/sites-available/default) দেখতে ছিল নিচের মত। আমরা আজকেও এই ফাইলটি নিয়ে কাজ করব।

গত পর্বের শেষে আমাদের ডিফল্ট সার্ভার ব্লক ফাইলটি (/etc/nginx/sites-available/default) দেখতে ছিল নিচের মত। আমরা আজকেও এই ফাইলটি নিয়ে কাজ করব। তবে সার্ভার ব্লক নিয়ে কাজ করার আগে চলুন পিএইচপির ফাস্টসিজিআই মডিউল ইনস্টল করে ফেলি।

পিএইচপির ফাস্টসিজিআই মডিউল ইনস্টল করা
এই স্টেপের জন্য আমাদের সার্ভারের টার্মিনালে নিচের কমান্ডটি চালাতে হবে। যদি ঠিকমত রিপোজিটরী কনফিগার করা থাকে, তাহলে পিএইচপি-এফপিএম প্যাকেজটি সহজেই ইনস্টল হয়ে যাবে।

উপরের কমান্ডটি ফেল করলে আমাদের ম্যানুয়ালী এপিটির সোর্স লিস্ট ফাইল এডিট করতে হবে।

ডেবিয়ান ৭ এর ক্ষেত্রে

ডেবিয়ান ৬ এর ক্ষেত্রে

এবার /etc/apt/sources.list ফাইলটি সেভ করে টার্মিনালে চলে আসুন। এখন যেটা করতে হবে সেটা…

View original post 379 more words

এসো নিজে করি – ডেবিয়ানে এঞ্জিনএক্স ইনস্টলেশন এবং কনফিগারেশন

The Storyteller

Nginx বা এঞ্জিনএক্স হল রাশিয়ান ডেভেলপার ইগর ভ্লাদিমির সিসোয়েভের তৈরী করা একটি লাইটওয়েট ওয়েব সার্ভার। স্ট্যাটিক ফাইল সার্ভ করার ক্ষেত্রে অসাধারণ পারফর্ম্যান্সের কারনে এঞ্জিনএক্স বিশ্বব্যাপী ব্যাপক জনপ্রিয়। এছাড়া ফাস্টসিজিআই ব্যবহার করে এঞ্জিনএক্স কে যেকোন সার্ভার সাইড ল্যাঙ্গুয়েজের সাথে ব্যবহার করা যায়। এই আর্টিকেলে আমরা দেখব কিভাবে ডেবিয়ান অপারেটিং সিস্টেমে আমরা এঞ্জিনএক্স ইনস্টল এবং কনফিগার করতে পারি। পরবর্তী আর্টিকেলে আমরা ফাস্টসিজিআই প্রটোকলের সাহায্যে এঞ্জিনএক্সের মাধ্যমে পিএইচপি ফাইল সার্ভ করা শিখব 🙂

এঞ্জিনএক্স ইনস্টল করা

প্রথমেই যেটা করতে হবে সেটা হল এপিটি প্যাকেজ ম্যানেজার লেটেস্ট রিপো ইনফরমেশন দিয়ে আপডেট করা। এটা আমরা কমবেশী সবাই জানি কিভাবে করতে হয়। আপনার সার্ভারের টার্মিনালে নিচের কমান্ড দিন। আপনি রুট ইউজার হিসেবে লগইন না করলে না করলে এবং সুডুয়ার্স লিস্টে আপনার ইউজার অ্যাড করা থাকলে কমান্ডের আগে sudo ব্যবহার করতে হবে 🙂

এবার আমরা নিচের কমান্ড দিয়ে এঞ্জিনএক্স ইনস্টল করব। কমান্ড দেয়ার কিছুক্ষনের মাঝেই দেখতে পাবেন এঞ্জিনএক্স ইনস্টল হয়ে গেছে

ইনস্টল হয়ে গেলে চলুন এঞ্জিনএক্স কে…

View original post 500 more words

ভিপিএস (VPS) কেনা, ব্যাসিক কনফিগারেশন, ল্যাম্প ইন্সটলেশন, ডোমেইন ম্যাপিং

ভূমিকা

VPS (Virtual Private Server) হচ্ছে একধরনের ভার্চুয়াল মেশিন বা ভার্চুয়াল কম্পিউটারও বলতে পারেন, যেটা একটা সার্ভিস হিসেবে কেনা যায় বিভিন্ন ক্লাউড সার্ভার প্রোভাইডারদের কাছ থেকে। এই ভার্চুয়াল মেশিন গুলোরও RAM আছে, হার্ডডিস্ক আছে, সিপিইউ আছে এবং সর্বোপরি একটা অপারেটিং সিস্টেম এর উপর চলে। মজার ব্যাপার হচ্ছে এরকম একটা মেশিনের বাস্তব কোন অস্তিত্ব নাই ঠিকই কিন্তু বাস্তব একটা ফিজিক্যাল মেশিনের মতই গঠন ও আচরণ। কিভাবে এই ভার্চুয়াল ইনফ্রাস্ট্রাকচার তৈরি ও মেইন্টেইনড হয় সেটা আজকে আমাদের আলোচনার মুল বিষয় নয়। বরং এরকম একটা ভার্চুয়াল সার্ভার মেশিনকে আমরা কিভাবে ওয়েব সার্ভার হিসেবে তৈরি করব সেখান থেকে কিভাবে ওয়েব কন্টেন্ট প্রোভাইড করবো সেটাই মুখ্য বিষয়।

কিনে ফেলি একটা ভার্চুয়াল প্রাইভেট সার্ভার

বিভিন্ন সার্ভার প্রোভাইডার তাদের মেশিনগুলোকে বিভিন্ন নামে ডাকে। যেমন অ্যামাজন এর ভাষায় এগুলো হচ্ছে ইন্সট্যান্স, Rackspace এর ভাষায় এগুলো ক্লাউড সার্ভার, DigitalOcean এর ভাষায় ড্রপলেট, ইত্যাদি। আমরা আজকের টিউটোরিয়ালের জন্য DigitalOcean এর কাছ থেকে একটি মিনিমাম কনফিগারেশনের সার্ভার কিনবো যেটাতে ৬৪ বিটের উবুন্টু ১৪.০৪ ইন্সটল করা থাকবে এবং আস্তে আস্তে এটা কফিগার করবো ওয়েব সার্ভার হিসেবে।
এই লিঙ্ক থেকে একটি সার্ভার কিনে ফেলতে পারেন (এটি আমার রেফারেল লিঙ্ক। এটা ব্যবহার করে সাইন আপ করলে $10 ক্রেডিট/ব্যালেন্স পাবেন, না করলে নাই) । প্রথমে অ্যাকাউন্ট ডিটেইল দিতে হবে এবং পরে ভ্যালিড পেমেন্ট মেথড অ্যাড করতে হবে। যদিও এরা এক মাস শেষ হলে পেমেন্ট মেথড থেকে বিল চার্জ করবে তার আগে না। আপনি চাইলে সার্ভার মাঝে মাঝে শাটডাউন করে রাখতে পারেন। সেই সময় গুলোতে বিল কাউন্ট হবে না।
বিস্তারিত পড়ুন

ভ্যাগর‍্যান্ট দিয়ে নিজের ইচ্ছামত ভার্চুয়াল সার্ভার কনফিগার ও ব্যবহার করা

The Storyteller

Screen Shot 2014-07-02 at 7.01.57 PM

আমরা যারা বিভিন্ন ডেভেলপমেন্ট এনভায়রনমেন্ট নিয়ে কাজ করি তাদের অনেক সময়েই এমন টুল ইনস্টল করা লাগে যেটা একটার সাথে আরেকটা কনফ্লিক্ট করে। পিএইচপিএর জন্য টিউন করা একটা মেশিনে আবার রুবি বা পাইথন সেটআপ করে ওয়েবসার্ভার কনফিগার করতে গেলে অনেক সময় এটা কাজ করা বন্ধ করে দিতে পারে বা ওটার কোন একটা লাইব্রেরীর সাথে এর কোন লাইব্রেরী ঝামেলা করতে পারে। আবার দুই তিন ভার্সন একসাথে চালাতে গেলেও মুশকিল হয়। অথবা হয়তো চাইছেন দুই বা তিনটা ভার্চুয়াল মেশিন তৈরী করে মাইএসকিউএল এর রেপ্লিকেশন/শার্ডিং প্র‍্য্যাকটিস করতে। এইসব সমস্যা খুব সহজেই সমাধান করা যায় ভার্চুয়াল বক্স এবং ভ্যাগর‍্য্যান্ট ইনস্টল করে। ভ্যাগর‍্যান্ট মূলত ভার্চুয়াল বক্স এর একটা র‍্য্যাপার টুল হিসেবে কাজ করে ভার্চুয়াল ডেভেলপমেন্ট এনভায়রনমেন্ট তৈরী করার জন্য। এর মাধ্যমে আমরা একদম ঝামেলা ছাড়াই আমাদের পছন্দের অপারেটিং সিস্টেম (মূলত লিনাক্স বেজড) ব্যবহার করে ভার্চুয়াল সার্ভার বানাতে পারি, সেগুলোতে সফটওয়্যার প্যাকেজ ইনস্টল করতে পারি। এভাবে আমরা আমাদের প্রয়োজনমত একাদিক ভার্চুয়াল এনভায়রনমেন্ট তৈরী করে রাখতে পারি এবং…

View original post 768 more words

কিভাবে জিও-ডিএনএস ব্যবহার করে ওয়েব কনটেন্ট দ্রুত সার্ভ করবেন

The Storyteller

ওয়েবসাইটের কনটেন্ট দ্রুত ভিজিটর দের কাছে সার্ভ করার জন্য বা লোকালাইজড কনটেন্ট সহজে দেখানোর জন্য জিও-ডিএনএস হতে পারে একটা চমৎকার পদ্ধতি। জিও ডিনএস ব্যবহারের মাধ্যমে আপনি ভিজিটরের লোকেশনের উপর ভিত্তি করে ওয়েবসাইট ভিজিটরের কাছাকাছি এলাকায় অবস্থিত কোন সার্ভার থেকে লোড করাতে পারেন। ধরুন আপনি আপনার সার্ভার হোস্ট করেছেন ইউএসএ তে। এখন ইউএস এর ভিজিটর রা সাইট অনেক দ্রুত লোড হতে দেখবে কারন সার্ভার তাদের এলাকায় অবস্থিত। কিন্তু এশিয়া থেকে যদি কেউ আপনার সাইট ভিজিট করে তারা কিন্তু আপনার সাইট দ্রুত দেখতে পাবে না, কারন ইউএস থেকে এশিয়ার মাঝে রয়েছে বিশাল ল্যাটেন্সি। জিওডিএনএস ব্যবহার করে আপনি দুইটি সার্ভার হোস্ট করতে পারেন ইউএস এবং এসিয়ান ভিজিটর দের জন্য। এটা করলে ইউএস থেকে ভিজিট করার সময় সাইট লোড হবে ইউএস সার্ভার থেকে, এশিয়া থেকে ভিজিট করার সময় সাইট লোড হবে এশিয়ান সার্ভার থেকে। ফলে যেখান থেকেই ভিজিট করা হোক না কেন, আপনার সাইটের লোডিং স্পিডের ব্যাপারে ভিজিটর রা আগের চেয়ে অনেক ভালো ফিল…

View original post 504 more words