CentOS-ൽ Laravel PHP വെബ് ഫ്രെയിംവർക്ക് എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം


Laravel ഒരു സ്വതന്ത്ര ഓപ്പൺ സോഴ്uസാണ്, പ്രകടവും ആകർഷകവുമായ വാക്യഘടനയുള്ള ശക്തമായ PHP ചട്ടക്കൂടാണ്. ആധുനികവും കരുത്തുറ്റതും ശക്തവുമായ ആപ്ലിക്കേഷനുകൾ അടിസ്ഥാനപരമായി വികസിപ്പിക്കുന്നതിനുള്ള പരിഷ്കൃതവും ലളിതവും വായിക്കാവുന്നതുമായ വാക്യഘടന ഇതിന് ഉണ്ട്. കൂടാതെ, വൃത്തിയുള്ളതും ആധുനികവും പരിപാലിക്കാവുന്നതുമായ PHP കോഡ് എഴുതുന്നതിന് ആവശ്യമായ നിരവധി ടൂളുകൾ Laravel നൽകുന്നു.

  • നിങ്ങളുടെ ഡാറ്റാബേസിൽ പ്രവർത്തിക്കുന്നതിനുള്ള ശക്തമായ ORM (ഒബ്ജക്റ്റ്-റിലേഷണൽ മാപ്പിംഗ്).
  • സങ്കീർണ്ണമല്ലാത്തതും വേഗതയേറിയതുമായ റൂട്ടിംഗ് സംവിധാനം.
  • പവർഫുൾ ഡിപൻഡൻസി ഇഞ്ചക്ഷൻ കണ്ടെയ്നർ.
  • Amazon SQS, Redis എന്നിവയുൾപ്പെടെയുള്ള ഒന്നിലധികം ക്യൂ ബാക്കെൻഡുകളിലുടനീളം ഒരു ഏകീകൃത API നൽകുന്നു, കൂടാതെ സെഷനും കാഷെ സംഭരണത്തിനുമായി.
  • ഒരു ലളിതമായ പ്രാമാണീകരണ സംവിധാനത്തെ പിന്തുണയ്ക്കുന്നു.
  • തത്സമയ ഇവന്റ് പ്രക്ഷേപണത്തെ പിന്തുണയ്ക്കുന്നു.
  • ഡാറ്റാബേസ് അഗ്നോസ്റ്റിക് മൈഗ്രേഷനുകളെയും സ്കീമ ബിൽഡറിനെയും പിന്തുണയ്ക്കുന്നു.
  • പശ്ചാത്തല ജോലി പ്രോസസ്സിംഗും മറ്റും പിന്തുണയ്ക്കുന്നു.

Laravel-ന്റെ ഏറ്റവും പുതിയ പതിപ്പ് പ്രവർത്തിപ്പിക്കുന്നതിന് നിങ്ങളുടെ സിസ്റ്റം ഇനിപ്പറയുന്ന ആവശ്യകതകൾ നിറവേറ്റണം:

  • PHP >= OpenSSL, PDO, Mbstring, Tokenizer, XML, Ctype, JSON PHP വിപുലീകരണങ്ങളുള്ള 7.1.3.
  • കമ്പോസർ - PHP-യ്ക്കുള്ള ഒരു ആപ്ലിക്കേഷൻ-ലെവൽ പാക്കേജ് മാനേജർ.

  1. LEMP സ്റ്റാക്കോടുകൂടിയ CentOS 7

CentOS, Red Hat, Fedora സിസ്റ്റങ്ങളിൽ Laravel 5.6 PHP ഫ്രെയിംവർക്കിന്റെ ഏറ്റവും പുതിയ പതിപ്പ് എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്ന് ഈ ലേഖനത്തിൽ ഞങ്ങൾ വിശദീകരിക്കും.

ഘട്ടം 1: Yum Repositories സജ്ജീകരിക്കുക

1. ഒന്നാമതായി, ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് അപ്uഡേറ്റ് ചെയ്ത പാക്കേജുകൾ (PHP, Nginx, MariaDB, മുതലായവ) ലഭിക്കുന്നതിന് നിങ്ങളുടെ Linux വിതരണത്തിൽ REMI, EPEL ശേഖരണങ്ങൾ പ്രവർത്തനക്ഷമമാക്കേണ്ടതുണ്ട്.

------------- On CentOS/RHEL 7.x ------------- 
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

------------- On CentOS/RHEL 6.x -------------
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

ഘട്ടം 2: Nginx, MySQL, PHP എന്നിവ ഇൻസ്റ്റാൾ ചെയ്യുക

2. അടുത്തതായി, നിങ്ങളുടെ സിസ്റ്റത്തിൽ ഒരു വർക്കിംഗ് LEMP എൻവയോൺമെന്റ് ഇൻസ്റ്റാൾ ചെയ്യേണ്ടതുണ്ട്. നിങ്ങൾക്ക് ഇതിനകം പ്രവർത്തിക്കുന്ന ഒരു LEMP സ്റ്റാക്ക് ഉണ്ടെങ്കിൽ, ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് ഇത് ഇൻസ്റ്റാൾ ചെയ്തില്ലെങ്കിൽ നിങ്ങൾക്ക് ഈ ഘട്ടം ഒഴിവാക്കാം.

# yum install nginx        [On CentOS/RHEL]

3. nginx ഇൻസ്റ്റാൾ ചെയ്തുകഴിഞ്ഞാൽ, വെബ് സെർവർ ആരംഭിച്ച് സിസ്റ്റം ബൂട്ടിൽ ആരംഭിക്കുന്നതിന് അത് പ്രവർത്തനക്ഷമമാക്കുക, തുടർന്ന് ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് സ്റ്റാറ്റസ് പരിശോധിക്കുക.

------------- On CentOS/RHEL 7.x ------------- 
# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx

------------- On CentOS/RHEL 6.x -------------
# service nginx start  
# chkconfig nginx on
# service nginx status

4. പൊതു നെറ്റ്uവർക്കിൽ നിന്ന് nginx ആക്uസസ് ചെയ്യുന്നതിന്, കാണിച്ചിരിക്കുന്നതുപോലെ ബാഹ്യ അഭ്യർത്ഥനകൾ സ്വീകരിക്കുന്നതിന് നിങ്ങളുടെ സിസ്റ്റം ഫയർവാളിൽ ഒരു പോർട്ട് 80 തുറക്കേണ്ടതുണ്ട്.

------------- On CentOS/RHEL 7.x -------------
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload 

------------- On CentOS/RHEL 6.x -------------
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# service iptables restart
# yum install mariadb-server php-mysql
# systemctl start mariadb.service
# /usr/bin/mysql_secure_installation
# yum install yum-utils
# yum-config-manager --enable remi-php72
# yum install php php-fpm php-common php-xml php-mbstring php-json php-zip

5. അടുത്തതായി, PHP-FPM സേവനം ആരംഭിച്ച് പ്രവർത്തനക്ഷമമാക്കുക, അത് പ്രവർത്തിക്കുന്നുണ്ടോയെന്ന് പരിശോധിക്കുക.

------------- On CentOS/RHEL 7.x ------------- 
# systemctl start php-fpm
# systemctl enable php-fpm
# systemctl status php-fpm

------------- On CentOS/RHEL 6.x -------------
# service php-fpm start  
# chkconfig php-fpm on
# service php-fpm status

ഘട്ടം 3: കമ്പോസറും Laravel PHP ഫ്രെയിംവർക്കും ഇൻസ്റ്റാൾ ചെയ്യുക

6. ഇപ്പോൾ താഴെ പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് ആവശ്യമായ Laravel ഡിപൻഡൻസികൾ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിനായി കമ്പോസർ (PHP-നുള്ള ഡിപൻഡൻസി മാനേജർ) ഇൻസ്റ്റാൾ ചെയ്യുക.

# curl -sS https://getcomposer.org/installer | php
# mv composer.phar /usr/local/bin/composer
# chmod +x /usr/local/bin/composer

7. നിങ്ങൾ കമ്പോസർ ഇൻസ്റ്റാൾ ചെയ്തുകഴിഞ്ഞാൽ, ഇനിപ്പറയുന്ന രീതിയിൽ കമ്പോസർ ക്രിയേറ്റ്-പ്രോജക്റ്റ് കമാൻഡ് പ്രവർത്തിപ്പിച്ച് നിങ്ങൾക്ക് Laravel ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയും.

# cd /var/www/html/
# sudo composer create-project --prefer-dist laravel/laravel testsite 

8. ഇപ്പോൾ നിങ്ങളുടെ വെബ് ഡോക്യുമെന്റ് റൂട്ടിന്റെ ഒരു നീണ്ട ലിസ്റ്റിംഗ് നടത്തുമ്പോൾ, നിങ്ങളുടെ laravel ഫയലുകൾ അടങ്ങിയ ടെസ്റ്റ്uസൈറ്റ് ഡയറക്ടറി അവിടെ നിലനിൽക്കണം.

$ ls -l /var/www/html/testsite

ഘട്ടം 4: Laravel ഇൻസ്റ്റലേഷൻ കോൺഫിഗർ ചെയ്യുക

9. ഇനി പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് ടെസ്റ്റ്uസൈറ്റ് ഡയറക്uടറിയിലും ലാറവൽ ഫയലുകളിലും ഉചിതമായ അനുമതികൾ സജ്ജമാക്കുക.

# chmod -R 775 /var/www/html/testsite
# chown -R apache.apache /var/www/html/testsite
# chmod -R 777 /var/www/html/testsite/storage/

10. കൂടാതെ, നിങ്ങൾ SELinux പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടെങ്കിൽ, ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് സംഭരണത്തിന്റെയും ബൂട്ട്സ്ട്രാപ്പ്/കാഷെ ഡയറക്ടറികളുടെയും സുരക്ഷാ സന്ദർഭം നിങ്ങൾ അപ്ഡേറ്റ് ചെയ്യേണ്ടതുണ്ട്.

# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/bootstrap/cache(/.*)?'
# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/storage(/.*)?'
# restorecon -Rv '/usr/share/nginx/html/testapp'

11. തുടർന്ന് നൽകിയിരിക്കുന്ന സാമ്പിൾ ഫയൽ ഉപയോഗിച്ച് നിങ്ങളുടെ ആപ്ലിക്കേഷനായി ഒരു എൻവയോൺമെന്റ് ഫയൽ സൃഷ്ടിക്കുക.

# cp .env.example .env

12. അടുത്തതായി, ഉപയോക്തൃ സെഷനുകളും മറ്റ് എൻക്രിപ്റ്റ് ചെയ്ത ഡാറ്റയും സുരക്ഷിതമാക്കാൻ Laravel ഒരു ആപ്ലിക്കേഷൻ കീ ഉപയോഗിക്കുന്നു. അതിനാൽ ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങളുടെ ആപ്ലിക്കേഷൻ കീ ഒരു റാൻഡം സ്ട്രിംഗിലേക്ക് ജനറേറ്റ് ചെയ്യുകയും സജ്ജമാക്കുകയും ചെയ്യേണ്ടതുണ്ട്.

# php artisan key:generate

ഘട്ടം 5: Laravel-നായി Nginx സെർവർ ബ്ലോക്ക് കോൺഫിഗർ ചെയ്യുക

13. ഈ ഘട്ടത്തിൽ, ഒരു വെബ് ബ്രൗസറിൽ നിന്ന് ആക്uസസ് ചെയ്യുന്നതിന് നിങ്ങൾ ടെസ്റ്റ്uസൈറ്റിനായി ഒരു Nginx സെർവർ ബ്ലോക്ക് കോൺഫിഗർ ചെയ്യേണ്ടതുണ്ട്. കാണിച്ചിരിക്കുന്നതുപോലെ /etc/nginx/conf.d/ ഡയറക്uടറിക്ക് കീഴിൽ അതിനായി ഒരു .conf ഫയൽ സൃഷ്uടിക്കുക.

# vi /etc/nginx/conf.d/testsite.conf

അതിൽ ഇനിപ്പറയുന്ന കോൺഫിഗറേഷൻ ചേർക്കുക (നിങ്ങളുടെ പരിസ്ഥിതിക്ക് ബാധകമായ മൂല്യങ്ങൾ ഉപയോഗിക്കുക, ഈ ഉദാഹരണത്തിൽ, ഞങ്ങളുടെ ഡമ്മി ഡൊമെയ്ൻ testinglaravel.com ആണ്). laravel ഇൻഡക്സ് ഫയൽ /var/www/html/testsite/public എന്നതിൽ സംഭരിച്ചിരിക്കുന്നു എന്നത് ശ്രദ്ധിക്കുക, ഇത് നിങ്ങളുടെ സൈറ്റിന്റെ/ആപ്ലിക്കേഷന്റെ റൂട്ട് ആയിരിക്കും.

server {
	listen      80;
	server_name testinglaravel.com;
	root        /var/www/html/testsite/public;
	index       index.php;

	charset utf-8;
	gzip on;
	gzip_types text/css application/javascript text/javascript application/x-javascript 	image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
	location / {
		try_files $uri $uri/ /index.php?$query_string;
	}
	
	location ~ \.php {
		include fastcgi.conf;
		fastcgi_split_path_info ^(.+\.php)(/.+)$;
		fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
	}
	location ~ /\.ht {
		deny all;
	}
}

ഫയൽ സംരക്ഷിച്ച് പുറത്തുകടക്കുക. അടുത്തകാലത്തെ മാറ്റങ്ങൾ പ്രാബല്യത്തിൽ വരുന്നതിനായി നിങ്ങളുടെ വെബ് സെർവർ പുനരാരംഭിക്കുക.

# systemctl restart nginx

ഘട്ടം 6: Laravel വെബ്uസൈറ്റ് ആക്uസസ് ചെയ്യുക

14. അടുത്തതായി, നിങ്ങൾക്ക് പൂർണ്ണമായി രജിസ്റ്റർ ചെയ്ത ഡൊമെയ്ൻ നാമം ഇല്ലെങ്കിൽ, പരിശോധനാ ആവശ്യങ്ങൾക്കായി ഒരു പ്രാദേശിക DNS സൃഷ്ടിക്കാൻ നിങ്ങൾ /etc/hosts ഫയൽ ഉപയോഗിക്കേണ്ടതുണ്ട്.

കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങളുടെ /etc/hosts ഫയലിൽ ഇനിപ്പറയുന്ന വരി ചേർക്കുക (യഥാക്രമം 192.168.43.31, testinglaravel.com എന്നിവയ്ക്ക് പകരം നിങ്ങളുടെ സിസ്റ്റം IP വിലാസവും ഡൊമെയ്uനും ഉപയോഗിക്കുക).

192.168.43.31  testinglaravel.com

15. ഇനിപ്പറയുന്ന URL ഉപയോഗിച്ച് ഒരു ബ്രൗസറിൽ നിന്ന് അവസാനമായി നിങ്ങളുടെ Laravel സൈറ്റ് ആക്സസ് ചെയ്യുക.

http://testinglaravel.com
OR
http://your-ip-address

നിങ്ങൾ പ്രാദേശികമായി വികസിപ്പിച്ചെടുക്കുകയാണെങ്കിൽ, ഇനിപ്പറയുന്ന രീതിയിൽ നിങ്ങളുടെ ആപ്ലിക്കേഷനോ സൈറ്റോ നൽകുന്നതിന് നിങ്ങൾക്ക് PHP-യുടെ അന്തർനിർമ്മിത വികസന സെർവർ ഉപയോഗിക്കാവുന്നതാണ്. ഈ കമാൻഡ് http://localhost:8000 അല്ലെങ്കിൽ http://127.0.0.1:8000 എന്നതിൽ ഒരു വികസന സെർവർ ആരംഭിക്കും. CentOS/REHL-ൽ, നിങ്ങളുടെ ആപ്ലിക്കേഷൻ ഈ രീതിയിൽ സേവിക്കുന്നതിന് ഫയർവാളിൽ ഈ പോർട്ട് തുറക്കണം.

# php artisan serve

ഈ സമയം മുതൽ, നിങ്ങൾ പോകാൻ തയ്യാറാണ്, നിങ്ങൾക്ക് നിങ്ങളുടെ സൈറ്റ് വികസിപ്പിക്കാൻ ആരംഭിക്കാം. കാഷെ, ഡാറ്റാബേസ്, സെഷനുകൾ എന്നിവ പോലുള്ള അധിക കോൺഫിഗറേഷനുകൾക്കായി, നിങ്ങൾക്ക് Laravel ഹോംപേജിലേക്ക് പോകാം.

പ്രായോഗികവും ആധുനികവുമായ വെബ് ഡെവലപ്uമെന്റിനായി പ്രകടവും മനോഹരവുമായ വാക്യഘടനയുള്ള ഒരു PHP ചട്ടക്കൂടാണ് Laravel. ഇൻസ്റ്റാളേഷൻ സമയത്ത് എല്ലാം നന്നായി നടന്നുവെന്ന് ഞങ്ങൾ പ്രതീക്ഷിക്കുന്നു, ഇല്ലെങ്കിൽ, നിങ്ങളുടെ ചോദ്യങ്ങൾ ഞങ്ങളുമായി പങ്കിടുന്നതിന് ചുവടെയുള്ള കമന്റ് ഫോം ഉപയോഗിക്കുക.