TurboGears কি?
TurboGears একটি জনপ্রিয় Python ওয়েব ফ্রেমওয়ার্ক, যা MVC (Model-View-Controller) আর্কিটেকচার অনুসরণ করে এবং একাধিক লাইব্রেরি এবং টুলসের সাহায্যে দ্রুত ওয়েব অ্যাপ্লিকেশন তৈরি করতে সহায়তা করে। এটি Django এবং Flask এর মতো অন্যান্য Python ফ্রেমওয়ার্কের তুলনায় আরো বেশি নমনীয় এবং একাধিক প্যাকেজের সাথে একত্রিত করা সহজ। TurboGears একটি সম্পূর্ণ স্ট্যাক প্রদান করে যা ডেটাবেস, ওয়েব পেজ রেন্ডারিং, ইউজার অথেনটিকেশন, এবং অনেক অন্যান্য কার্যকারিতা একত্রিত করে।
TurboGears-এ সাধারণত Turbogears2 ভার্সনটি ব্যবহৃত হয়, যা WSGI-সাপোর্টেড এবং Python 3 এর জন্য প্রস্তুত।
Web Server (Apache/Nginx) এর সাথে TurboGears কনফিগার করা
TurboGears অ্যাপ্লিকেশন চালানোর জন্য সাধারণভাবে WSGI (Web Server Gateway Interface) ব্যবহার করে। সাধারণত ওয়েব সার্ভার হিসেবে Apache বা Nginx ব্যবহৃত হয়। এদের সাথে TurboGears কনফিগার করার জন্য আপনাকে WSGI সার্ভার যেমন Gunicorn বা uWSGI ব্যবহার করতে হবে, কারণ এই সার্ভারগুলো Python অ্যাপ্লিকেশনগুলিকে ওয়েব সার্ভারের সাথে সংযুক্ত করে।
এখানে আমরা Apache এবং Nginx এর সাথে TurboGears কনফিগার করার জন্য প্রয়োজনীয় স্টেপগুলি আলোচনা করব।
১. Apache এর সাথে TurboGears কনফিগার করা
Apache সার্ভার ব্যবহার করে TurboGears অ্যাপ্লিকেশন চালানোর জন্য আপনাকে mod_proxy এবং mod_proxy_uwsgi বা mod_wsgi এর মতো Apache মডিউলগুলি ব্যবহার করতে হবে।
Apache Server Setup:
Apache এবং mod_proxy_uwsgi ইনস্টল করা: প্রথমে আপনার সিস্টেমে Apache এবং mod_proxy_uwsgi ইনস্টল করতে হবে। সাধারণভাবে আপনি নিচের কমান্ড দিয়ে এটি ইনস্টল করতে পারেন (Ubuntu/Debian-এর জন্য):
sudo apt-get update sudo apt-get install apache2 libapache2-mod-proxy-uwsgiWSGI Server (uWSGI) ইনস্টল করা: TurboGears অ্যাপ্লিকেশন চালানোর জন্য uWSGI ইনস্টল করতে হবে। uWSGI হল একটি জনপ্রিয় WSGI সার্ভার যা Python অ্যাপ্লিকেশন ওয়েব সার্ভারের সাথে সংযুক্ত করে।
sudo apt-get install uwsgiTurboGears অ্যাপ্লিকেশন চালানো: TurboGears অ্যাপ্লিকেশন চালানোর জন্য নিচের কমান্ডটি ব্যবহার করতে পারেন:
uwsgi --http :8080 --wsgi-file /path/to/your/app.wsgi --masterApache কনফিগারেশন: এখন, Apache কনফিগারেশন ফাইল (যেমন
/etc/apache2/sites-available/000-default.conf) ওপেন করুন এবংProxyPassএবংProxyPassReverseডিরেকটিভ ব্যবহার করে Apache সার্ভারকে uWSGI সার্ভারের সাথে কানেক্ট করুন।উদাহরণ:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ProxyPass /unix:/tmp/uwsgi.sock|uwsgi://127.0.0.1:8080/ ProxyPassReverse /unix:/tmp/uwsgi.sock|uwsgi://127.0.0.1:8080/ ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>এখানে,
ProxyPassএবংProxyPassReverseডিরেকটিভগুলি TurboGears অ্যাপ্লিকেশনকে uWSGI সার্ভারের মাধ্যমে Apache সার্ভারে লোড করে।Apache রিস্টার্ট: কনফিগারেশন পরিবর্তন করার পর Apache সার্ভার রিস্টার্ট করুন:
sudo systemctl restart apache2
২. Nginx এর সাথে TurboGears কনফিগার করা
Nginx একটি জনপ্রিয় লাইটওয়েট ওয়েব সার্ভার যা খুব দ্রুত এবং কম রিসোর্সে কাজ করে। TurboGears অ্যাপ্লিকেশন চালাতে Nginx ব্যবহার করলে আপনি uWSGI বা Gunicorn সার্ভার দিয়ে অ্যাপ্লিকেশনটি চালাতে পারেন।
Nginx Server Setup:
Nginx এবং uWSGI ইনস্টল করা: প্রথমে, Nginx এবং uWSGI ইনস্টল করুন:
sudo apt-get install nginx sudo apt-get install uwsgiTurboGears অ্যাপ্লিকেশন চালানো: TurboGears অ্যাপ্লিকেশনটি চালাতে uWSGI ব্যবহার করুন:
uwsgi --http :8080 --wsgi-file /path/to/your/app.wsgi --masterNginx কনফিগারেশন: Nginx কনফিগারেশন ফাইল (যেমন
/etc/nginx/sites-available/default) ওপেন করুন এবং uWSGI সার্ভারের সাথে কানেক্ট করার জন্যuwsgi_passডিরেকটিভ ব্যবহার করুন।উদাহরণ:
server { listen 80; server_name yourdomain.com; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8080; } }এখানে,
uwsgi_passNginx কে uWSGI সার্ভারে রিকোয়েস্ট পাঠাতে নির্দেশ দিচ্ছে।Nginx রিস্টার্ট: কনফিগারেশন ফাইল সেভ করার পর Nginx সার্ভার রিস্টার্ট করুন:
sudo systemctl restart nginx
সারাংশ
TurboGears এর সাথে Apache বা Nginx কনফিগার করা হলে আপনি একটি শক্তিশালী ওয়েব অ্যাপ্লিকেশন পরিচালনা করতে পারবেন। এই দুটি ওয়েব সার্ভারের সাথে TurboGears অ্যাপ্লিকেশন চালানোর জন্য আপনাকে uWSGI বা Gunicorn এর মতো WSGI সার্ভার ব্যবহার করতে হবে। Apache বা Nginx সার্ভার ব্যবহারের ফলে আপনার অ্যাপ্লিকেশন আরও স্কেলেবল, সুরক্ষিত এবং দ্রুত হয়ে উঠবে।
Read more