زانیاری
Lighttpd ڕاژەکارێکی وێبی سەرچاوە کراوەی خێرا و نەرمە و لە ڕووی کاراییەوە هاوسەنگە لەگەڵ Nginx. بۆ ڕاژەکردنی بەرنامەکانی PHP وەک وۆردپرێس و Magento و هتد. لەسەر سێرڤەری Lighttpd، پێویستە کۆگایێکی(stack )LLMP لەسەر ڕاژەکار دابنێیت. LLMP کورتکراوەی Linux, Lighttpd, MySQL, وە PHPیە.
ئەگەر بەدوای ڕاژەیێک دەگەڕێیت بۆ مامەڵەکردن لەگەڵ باری ترافیک بە کەمترین بەکارهێنانی بیرگە، ئەوا سازدانی LLMP هەڵبژاردەیەکی باشە. لەم ڕێنماییەدا سەیری چۆنیەتی دامەزراندنی کۆگای LLMP لەسەر ئامێری ئوبونتو ٢٠.٠٤ LTS دەکەین.
پێشنیاز
ئیوە پێویستان بە ڕاژەیێکی ئوبونتوی ٢٠.٠٤(LTS) بە دەستپێگەیشتنی sudo بۆ بەکارهێنەرێکە.هەروەها کەمێ سارەزای فەرمانەکانی لینوکسیش ببن. پاش دامەزراندن دەبێ ئوبونتو بەڕۆژ و بەرز بکەینەوە.
sudo apt-get update && apt-get upgrade
دامەزراندنی ڕاژەکاری Lighttpd
بۆ دامەزراندن تەنها ئەم کۆدەی خوارەوە بنووسن
sudo apt-install lighttpd
کاتێک پرۆسەی دامەزراندن تەواو بوو، ئەم فرمانانەی خوارەوە بنووسە بۆ دەستپێکردن و چالاککردنی ڕاژەی Lighttpd.
systemctl start lighttpd systemctl enable lighttpd
بۆ بارو دۆخەکە دەتوانی ئەم فەرمانە بنووسی
systemctl status lighttpd
ئێستا لە دیواری ئاگرینی UFW، خزمەتگوزاری HTTP و HTTPS و SSH دادەنێین. UFW ئامرازی ڕێکخستنی دیواری ئاگری پێشوەختەیە بۆ ئوبونتو، کە بە “Uncomplicated Firewall” ناودەبرێت. ئەم فرمانانەی خوارەوە بنووسە و یەک بە یەک enter بکە.
sudo ufw allow ssh sudo ufw allow http sudo ufw allow https
دیواری ئاگرینی UFW چالاک بکە بە نووسینی ئەم فرمانەی خوارەوە:
sudo ufw enable
ئەگەر پرسیارێکت بۆ هات لە هێڵێ فەرمانەکە لەوانەیە پەیوەندییەکانی ssh ی هەبوو تێکبدات، بنووسە yو enter بکە.
بۆ پشتڕاستکردنەوەی دامەزراندنی Lighttpd، بە ناونیشانی IP ی لە وێبگەڕێکدا بچۆرە ناو ڕاژەکارەکەت. ئەگەر ئەم وێنەی خوارەوە پیشان بدات، ئەوا مانای وایە ڕاژەی وێبی Lighttpd ـەکەت بە سەرکەوتوویی لەسەر ئوبونتو ٢٠.٠٤ ـت دامەزراوە.
دامەزراندن و ڕێکخستنی ڕاژەکاری MySQL
MySQL سیستەمێکی بەڕێوەبردنی بنکەدراوەی پەیوەندییە کە لەسەر بنەمای زمانی پرسیاری پێکهاتەیی دامەزراوە. بۆ دامەزراندنی MySQL ڕاژەی و client لەسەر Ubuntu 20.04 ئەم فرمانەی خوارەوە ڕوونووس/لکاندن بکە و enter بکە.
sudo apt-get install mysql-server mysql-client
بە ئاگاداریێک پرسیارت لێدەکات کە ئەم کارە ٢٤٧ مێگابایت قەبارەی بۆشایی پەپکە دەبات دوای دامەزراندن. کەواتە، yو enter بکە.
کاتێک پرۆسەی دامەزراندن تەواو بوو، ڕاژەکاری MySQL دەست پێ بکە ، چالاکی بکە و زیادی بکە بۆ بووتی سیستەم بە نووسینی ئەم فەرمانەی خوارەوە یەک بە یەک.
systemctl start mysql systemctl enable mysql
دەبێ ئەم ئاکامە نیشان بدات
بۆ پشکنینی دۆخی خزمەتگوزاری MySQL ـەکەت، ئەم فرمانەی خوارەوە لە تێرمیناڵەکەدا بنووسە. دۆخی mysql.service دەبێت وەک “چالاك (کارکردن”) پیشان بدرێت.
systemctl status mysql
بۆ ڕێکخستنی ڕێکخستنەکانی ئاسایشی MySQL، سکریپتێکی ئاسایش جێبەجێ دەکەیت کە لەگەڵ پاکەتی MySQL دێت. ئەم فرمانەی خوارەوە بنووسە و enter بکە بۆ جێبەجێکردنی سکریپتەکە.
mysql_secure_installation
فرمەکەی سەرەوە چەند پرسیارێکت لێدەکات بۆ ڕێکخستنی ڕاژەکاری MySQL. داوات لێدەکات وشەی نهێنی خۆت ڕێکبخەیت بە بەکارهێنانی پێکهاتەی VALIDATE PASSWORD” COMPONENT”. ئەم پێوەکراوە یارمەتیت دەدات بۆ دانانی وشەی نهێنی بەهێز بۆ بنکەدراوەی MySQL ـت. بۆ چالاککردنی ئەم پێوەکراوە yو enter . بنووسە 0، 1، یان 2 بۆ هەڵبژاردنی سیاسەتی ڕەچاوکردنی وشەی نهێنی کە ئاستی بەهێزی وشەی نهێنی تۆ دیاری دەکات.
وشەی نهێنی بەهێز دابنێ، پێوەکراوەکەی “VALIDATE PASSWORD” پێت دەڵێت بەهێزی خەمڵێنراوی وشەی نهێنیەکەت. yو enter . دوای دانانی وشەی نهێنی پارێزراو، باقی ڕێکخستنەکە ڕێکبخە وەک لە خوارەوە ڕوون کراوەتەوە.
دوای دانانی وشەی نهێنی پارێزراو، باقی ڕێکخستنەکە ڕێکبخە وەک لە خوارەوە ڕوون کراوەتەوە.
– لابردنی بەکارهێنەرانی بێناو – y|Yدابنێ
چونکە MySQL بە شێوازی پێشوەختە بەکارهێنەری بێناو لەخۆدەگرێت کە ڕێگە بە هەر کەسێک دەدات پەیوەندی بکات بە سێرڤەری MySQL بەبێ ئەوەی ئەکاونتی بەکارهێنەری هەبێت. بۆیە لاببە.
– ڕێگە بە چوونەژوورەوەی ڕەگ بدە لە دوورەوە – y|Yداخڵ بکە
چونکە root تەنها لە ‘localhost’ەوە دەبێت ڕێگەی پێبدرێت. دڵنیای دەدات لەوەی کەسێک ناتوانێت وەک root لە دەرەوەی تۆڕەکەت بچێتە ژوورەوە.
– بنکەدراوەی تاقیکردنەوە لاببەیت و دەستت پێی بگات؟ –y|Y دابنێ
چونکە MySQL لەگەڵ بنکەیەکی زانیاری تاقیکردنەوەدا دێت کە هەر کەسێک دەتوانێت دەستی پێ بگات. بەم شێوەیە پێش ئەوەی بچیتە ناو ژینگەی بەرهەمهێنانەوە، دەریبهێنە.
ئێستا خشتەکانی ئیمتیازات دووبارە باربکەرەوە؟ y|Y دابنێ
چونکە ئەمە دڵنیای دەدات لەوەی ئەو گۆڕانکاریانەی کە تا ئێستا کردووتە دەستبەجێ کاری پێدەکرێت.
بۆ پشکنینی هەموو ئەو بەکارهێنەرانەی کە دەتوانن بچنە ناو سێرڤەری MySQL، سەرەتا بە بەکارهێنانی ئەم فرمانەی خوارەوە بچۆرە ناو MySQL وەک root:
mysql -u root -p
پاشان، ئەم فرمانەی خوارەوە دەربکە بۆ بەدەستهێنانی لیستی بەکارهێنەران لەسەر سێرڤەری MySQL ـەکەت:
select User, Host from mysql.user;
کاتێک لیستی بەکارهێنەرانت پشتڕاست کردەوە، بنووسە exit بۆ دەرچوون لە توێکڵی MySQL.
دامەزراندنی PHP – بەڕێوەبەری پرۆسەی خێرای CGI (PHP-FPM)
PHP-FPM ڕاژەیەک چالاک دەکات بۆ مامەڵەکردن لەگەڵ بڕێک زۆر بار، تەنانەت لەسەر ڕاژەیەکی لاوزیش. بانگەشەی ئەوە دەکات کە کاتی بارکردن بە ڕێژەی لەسەدا ٣٠٠، لەسەر هەندێک بەرنامەی PHP کەمدەکاتەوە. بۆ دامەزراندنی نوێترین پاکێجەکانی PHP-FPM ئەم فرمانەی خوارەوە دەربکە و enter بکە.
sudo apt-install php-fpm php-cgi php-mysql
ڕێکخستنی PHP-FPM بە وردی ڕێکبخە بە ئەنجامدانی هەندێک گۆڕانکاری لە پەڕگەی php.ini.بۆ ئەم مەبەستە سەرەتا بچۆ بۆ directory/etc/php/7.4/fpm بە بەکارهێنانی فرمانی cd وەک لە خوارەوە دیارە.
cd /etc/php/7.4/fpm
پاشان ئەم فرمانەی خوارەوە بەکاربهێنە بۆ کردنەوەی فایلە php.ini لە دەستکاریکەری vim .
vim php.ini
کۆمێنت لەسەر دێڕەکەی cgi.fix_pathinfo=1 هەڵبگرە. لە دەستکاریکەرەکەدا بەدوای ئەو دێڕەدا بگەڕێ کە ‘cgi.fix_pathinfo=1’ی تێدایە. بۆ ئەم مەبەستە ‘ Esc‘ بکە و بنووسە /cgi.fix_pathinfo=1 و enter بکە.
پاشان، i داگرە بۆ گۆڕینی بۆ دۆخی جێگیرکردن و لابردنی ; (semicolon) هێمای پێش دێڕەکە یان دوگمەی x داگرە بۆ هەڵوەشاندنەوەی سەرنجی دێڕەکە لە فایلە php.ini.
کاتێک تەواو بوویت ئەو گۆڕانکاریانەی کە کردوتە لە فایلەکەدا سەیڤ بکە و لە دەستکاریکەری vim دەربکە بە فشاردان لەسەر Escبۆ ئەوەی بچیتە ناو command mode و پاشان بنووسە wq:و enter بکە بۆ دەرچوون لە دەستکاریکەرەکە.
دەستپێکردن و چالاککردنی PHP-FPM بە دەرکردنی ئەم فرمانانەی خوارەوە:
systemctl start php7.4-fpm systemctl enable php7.4-fpm
بۆ پشکنینی دۆخی PHP-FPM ئەم فرمانەی خوارەوە جێبەجێ بکە:
systemctl status php7.4-fpm
ڕێکخستنی Lighttpd و PHP-FPM
ئێستا هەندێک گۆڕانکاری لە پەڕگەی ڕێکخستنی fastcgi-php.conf-15 دەکەین بۆ ڕێکخستنی Lighttpd و PHP-FPM.بە نووسینی ئەم فرمانە بچۆ بۆ ناوەڕۆکی گونجاو و enter بکە.
cd etc/lighttpd/conf-available/
ئەگەر دەتەوێت ڕوونووسێکی دووبارەی پەڕگەی ’15-fastcgi-php.conf’ بهێڵیتەوە ئەوا ئەم فرمانەی خوارەوە بەکاربهێنە.
cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig
ئێستا، بە بەکارهێنانی دەستکاریکەری vim ئەم فایلە دەکەیتەوە و دەستکاری دەکەیت بە بەکارهێنانی ئەم فرمانەی خوارەوە:
vim 15-fastcgi-php.conf
vim 15-fastcgi-php.conf
لێرەدا ناوەڕۆکی ڕێکخستنی پێشوەختەی PHP-CGI بەو ناوەڕۆکە بگۆڕە کە لە خوارەوە نیشان دراوە.
fastcgi.server += ( ".php" => (( "socket" => "/var/run/php/php7.4-fpm.sock", "broken-scriptfilename" => "enable" )) )
بۆ ئەم مەبەستە هەنگاوەکان بە رێکوپێکی تایبەت وەک لە خوارەوە نیشان دراوە پەیڕەو بکە.
١- بۆ چوونە ناو دۆخی جێگیرکردنEsc و i بکە.
٢- ئێستا بچۆ بۆ ئەو دێڕانەی کە دەبێت بە بەکارهێنانی کلیلی تیری سەرەوە یان خوارەوە بیسڕینەوە (کلیلی تیری سەرەوە و خوارەوە لە دەستکاریکەری vim کاردەکەن نەک لە دەستکاریکەریvi .
٣- بۆ سڕینەوەی دێڕێکی دیاریکراو dd بکە. وە بۆ لابردنی یەک وشە x داگرە.
٤- ئێستا ئەو کۆدەی سەرەوە لە فایلەکەدا کۆپی/پێستی بکە.
٥- پاشان فایلەکە سەیڤ بکە و لە vim دەربکە بە فشاردان لەسەر wq:و enter بکە بۆ دەرچوون لە دەستکاریکەرەکە.
ئێستا Lighttpd بە شێوەیەکی گونجاو لەگەڵ PHP-FPM کاردەکات و بە شێوەیەکی گونجاو ڕێکخراوە.
مۆدیولەکانی FastCGI Lighttpd چالاک بکە بە بەکارهێنانی ئەم فرمانانەی خوارەوە:
lighttpd-enable-mod fastcgi lighttpd-enable-mod fastcgi-php
لە کۆتاییدا، ڕاژەکاری وێبی Lighttpd دووبارە دابمەزرێنەرەوە بۆ جێبەجێکردنی ڕێکخستن و ڕێکخستنە نوێیەکان.
systemctl restart lighttpd
ڕاژەکاری LLMP ـەکەت تاقی بکەرەوە
بۆ تاقیکردنەوەی ڕاژەکاری LLMP تازە دروستکراوەکەت، فایلێک لە ڕەگی بەڕێوەبەرایەتی گشتی لە /var/www/html دروست دەکەیت.
سەرەتا بە بەکارهێنانی فرمانی cd وەک لە خوارەوە دیارە بچۆ بۆ دایرێکتۆرییەکە.
cd /var/www/html/
فایلێکی نوێ دروست بکە با بڵێین file.php وەک لە خوارەوە دیارە بە بەکارهێنانی دەستکاریکەری vim .
vim file.php
ئێستا ئەم سکریپتە سادەیە لە دەستکاریکەرەکەدا بنووسە بە چوونە ناو دۆخی جێگیرکردن بە فشاردان لەسەر i.
بە فشاردان لەسەر Escو:wq فایلەکە پاشەکەوت بکە و دەربکە.
phpinfo() فەنکشنێکە کە زانیارییەکانی پەیوەست بە php بانگهێشت دەکات. ئەم سکریپتە تەنها بۆ تاقیکردنەوەیە کە ئایا کاردەکات یان نا. هەروەها دەتوانیت سکریپتی php ی تر بە دڵی خۆت بەکاربهێنیت.
لە کۆتاییدا بۆ تاقیکردنەوەی سێرڤەرەکەت، وێبگەڕێک بکەرەوە بۆ دەستگەیشتن بەو پەڕگەیەی کە تازە دروستت کردووە بە داخڵکردنی ئەم ناونیشانەی خوارەوە http://your-server-ip/file.php.
ئەگەر لاپەڕەی PHP Version لە ئەنجامدا دەرکەوت ئەوا دەتوانیت بە سەلامەتی بڵێیت LLMP کۆگای بە سەرکەوتوویی لەسەر ئامێری Ubuntu 20.04 ـەکەت دامەزراوە. ئێستا دەتوانیت ئەو بەرنامانەی PHP کە دەتەوێت لەسەر سێرڤەرەکە جێبەجێی بکەیت دایبمەزرێنیت.