পূর্বের দুটো পর্ব-
আজ দেখাবো পূর্বের দুটো টিউটোকে একত্রিত করে আপনি কিভাবে ল্যারাবেল সেটাপ দিবেন এবং এর জন্য একটা ভারচুয়াল হোস্ট ক্রিয়েট করবেন এবং ল্যারাবেল কনফিগার করবেন।
পূর্বের টিউটোতে বলেছিলাম ল্যারাবেল আপনি এক ক্লিকেই সেটাপ করতে পারেন-
composer create-project laravel/laravel --prefer-dist
নোটঃ পূর্বের টিউটোরিয়ালে বলা আছে কিভাবে কম্পোজার সেটাপ করবেন, এবং ল্যারাবেল সেটাপ করা সম্পর্কে বিস্তারিত। দয়া করে যারা পূর্বের টিউটো পড়েন নি তারা সেখান থেকে একটু ঘুরে আসলে আপনাদের বুঝতে সুবিধা হবে।
আজ আমরা এক ক্লিকে সেটাপ করবো না, ডাউনলোড করে সেটাপ করার চেষ্টা করবো। এটাও খুবই সহজ। প্রথমে এখান থেকে লেটেস্ট ল্যারাবেল নামিয়ে নিন। এবার আনজিপ করে রিনেম করে আপনি যে নামে প্রজেক্ট তৈরি করতে চাচ্ছেন তার নাম দিন। আমি দিচ্ছি poluda নামে 🙂 । এখন আপনি যেখানে রেখেছেন টারমিনাল দিয়ে সেই ডিরেক্টরীতে প্রবেশ করুন।
কিভাবে প্রবেশ করবেন বুঝতে পারছেন না। আসুন এটাও একটু শিখে নেই। আপনি যদি উইন্ডোজ ব্যবহার করে থাকেন তাহলে shift বাটন চেপে ধরে মাউসের রাইট বাটন ক্লিক করেন এবং ওপেন কমান্ড দিন। তাহলে কমান্ড লাইন ওপেন হবে আপনি যেই ডিরেক্টরি সিলেট করেছেন সেখান থেকে। আসুন এবার টারমিনালে যাওয়া যাক (যারা লিনাক্স অথবা ম্যাক ব্যবহার করেন তাদের জন্য)।
টারমিনাল ওপেন করবার জন্য সার্চ বাটনে Terminal লিখুন অথবা Ctrl+Alt+T চাপুন। আপনি কোন ডিরেক্টরিতে আছেন তা জানার জন্য pwd লিখে এন্টার চাপুন। আপনি কোন ডিরেক্টরিতে আছেন তা দেখিয়ে দিবে। এখন আসুন দুটো কমান্ড শিখা যাক। আপনি কোন ডিরেক্টরিতে প্রবেশ করবার জন্য প্রথমেই লিখতে হবে cd
তারপর আপনার ডিরেক্টরী নাম। ব্যাকে আসবার জন্য cd -
লিখে এন্টার এবং হোম ডিরেক্টরিতে ফেরত যেতে cd --
লিখে এন্টার। এই দুটো কমান্ড মনে রাখলেই আপনি যে কোন ডিরেক্টরিতে প্রবেশ এবং বাহির হতে পারবেন 🙂 । এবার আসুন আপনি যে ডিরেক্টরিতে আছেন তাতে আর কি কি ডিরেক্টরী আছে তা জানবেন কি করে তা জানা যাক। এটাও খুবই সিম্পল, আপনি টারমিনালে লিখুন ls এবং এন্টার চাপুন তাহলেই আপনি যে ডিরেক্টরিতে আছেন তার ভিতরে কি কি ডিরেক্টরী আছে কোন ফাইল আছে তা দেখিয়ে দিবে 🙂 ।
এখন আমি /var/www/ ডিরেক্টরিতে ল্যারাবেল আপজিপ করে রিনেম করেছি poluda নামে। এই ডিরেক্টরিতে প্রবেশ করবার জন্য টারমিনালে লিখুনঃ
cd var/www/poluda
এন্টার চাপুন তাহলে আপনি poluda ডিরেক্টরিতে প্রবেশ করতে পারবেন। এবার
php composer.phar install
অথবা composer install
লিখে এন্টার চাপুন তাহলেই ল্যারাবেল ইনস্টল হওয়া শুরু হয়ে যাবে। ইনস্টল হবার পর php artisan serve
লিখে এন্টার চাপুন। নিচের মতো একটা ম্যাসেজ শো করবে টারমিনালে -
Laravel development server started on http://localhost:8000
ব্রাউজারে localhost:8000 লিখে এন্টার চাপুন তাহলে ল্যারাবেল ওপেন হবে 🙂
এবার আসুন কিভাবে ভারচুয়াল হোস্ট ক্রিয়েট করবেন তা দেখা যাক। পূর্বের পর্বে লিনাক্স এবং উইন্ডোজের জন্য ভারচুয়াল হোস্ট ক্রিয়েট করা দেখিয়েছি। আমি poluda.dev নামে একটি ভারচুয়াল হোস্ট ক্রিয়েট করছি। যারা উইন্ডোজ ব্যবহার করেন তারা পূর্বের টিউটো ফলো করে কাজ করেন আর যারা লিনাক্স অথবা ম্যাক ব্যবহার করেন তারা সাথেই থাকেন 🙂
এপাচির ডিফল্ট ভারচুয়াল হোস্ট ফাইল কপি করে poluda.dev.conf ফাইল তৈরি করবার জন্য নিচের কমান্ড দিন টারমিনালে-
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/poluda.dev.conf
এতে করে poluda.dev.conf নামে সেম ডিরেক্টরীতে একটি ফাইল কপি হবে। ফাইলটি gedit এডিটরে ওপেন করবার জন্য টারমিনালে লিখুন-
sudo gedit /etc/apache2/sites-available/poluda.dev.conf
ফাইলটি ওপেন হলে ফাইলের সকল লেখা মুছে দিয়ে নিচের লেখাগুলো কপি টু পেষ্ট করুন-
<VirtualHost *:80> DocumentRoot "/var/www/poluda/public" ServerName poluda.dev </VirtualHost> <Directory "/var/www/poluda/public"> Allow From All AllowOverride All Options +Indexes </Directory>
এখানে ডিরেক্টরীর স্থানে আপনার ডিরেক্টরীর লোকেশন দিন। 🙂
ভারচুয়াল হোস্ট ইনেবল করবার জন্য
sudo a2ensite poluda.dev.conf
ডিএনএস সেট করবার জন্য
sudo gedit/etc/hosts
এপাচি রিস্টার্ট দেবার জন্য
sudo service apache2 restart
বিঃদ্রঃ বিস্তারিত জানবার জন্য উবুন্টু ১৪.০৪ ল্যাম্প সার্ভারে এবং উইন্ডোজে Virtual Hosts সেটাপ করা টিউটোরিয়ালটা পড়ুন।
সবকিছু ঠিকঠাক মতো করে থাকলে ব্রাউজারে poluda.dev লিখে এন্টার দিলে ল্যারাবেল ওপেন হবে 🙂
যদি পারমিশনের কোন ঝামেলা হয় তাহলে app/storage ফোল্ডারটিকে রাইট পারমিশন দিয়ে দিবেন।
এবার আসুন কনফিগারেশনে। আপনার প্রজেক্টের app/config/app.php ফাইলটি ওপেন করুন। নিচে নেমে দেখুন 'key' => 'YourSecretKey!!!', নামে একটি লাইন আছে। এখানে ৩২ ক্যারেক্টরের কী দিতে হবে। এজন্য টারমিনালে লিখুন-
php artisan key:generate
আপনার ৩২ ক্যারেক্টরের কী জেনারেট হয়ে যাবে 🙂
'debug' => true, ডিফল্ট ভাবে false থাকে। একে true করে দেন। তাহলে কাজ করবার সময় কোন সমস্যা পড়লে তার ইরর দেখে খুব সহজেই বুঝতে পারবেন। তবে যে সকল প্রজেক্ট আপনার রানিং আছে তার মাঝে কখনোই এটা true করে রাখবেন না। নেভার এভার।
এবার routes.php ফাইলটা ওপেন করুন। ফাইলের শেষে নিচের লাইনগুলো এড করে দিন। (রাউট সম্পর্কে বিস্তারিত অন্য কোন টিউটোরিয়ালে আলোচনা করবো ইনশাল্লাহ)
Route::get('about', function(){ return "This is about page"; });
বিশ্লেষনঃ এখানে একটি about পেজ ক্রিয়েট করা হয়েছে। যা আপনার ডোমিং/about লিখলে ব্রাউজারে This is about page শো করবে। সুতরাং আমাদের ডোমিং নাম ছিলো poluda.dev, তাই ব্রাউজারে http://poluda.dev/about লিখে এন্টার চাপুন। যদি This is about page লেখা আসে তাহলে ঠিক আছে আর যদি না আসে তাহলে http://poluda.dev/index.php/about লিখে এন্টার করুন। যাদের প্রথমে আসে নাই তাদের index.php সহকারে অবশ্যই আসবে। এখন যাদের index.php সহকারে আসছে তারা কি করে index.php বাদ দিবেন? এটা খুবই সিম্পল। আমার সাথেই থাকুন এটাও বলে দিচ্ছি 🙂
প্রথমেই চেক করেন এপাচিতে mod_rewrite ইনেবল করা আছে কিনা। যদি না থাকে তাহলে নিচের কমান্ডটি দিন
sudo a2enmod rewrite
সার্ভার রি-স্টার্ট করুন
sudo service apache2 restart
ব্যাস হয়ে গেল, এবার index.php বাদে চেক করুন। কাজ হয় নি তাহলে .htaccess ফাইলটি এডিট করে নিচের কোডগুলো দিন-
Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L]
তাও কাজ হয়নি :/ ধুর মিয়া গুগুল সার্চ করুন অথবা কি ইরর দিচ্ছে তা দেখান 🙂
আশা করি আপনারা সবকিছু ঠিক ঠাক মতো করতে পারবেন। আর কোন সমস্যায় পরলে জানাতে ভুলবেন না যেন 🙂
পূর্বে প্রকাশিতঃ এখানে
আমি পলাশ মাহমুদ। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 15 বছর 2 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 16 টি টিউন ও 18 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 1 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।