Kako instalirati CakePHP okvir na Ubuntu 24.04


U ovom članku ćemo pokriti proces instalacije i korištenja CakePHP okvira na Ubuntu 24.04. Ako vam je ova riječ nova, CakePHP je široko korišteni open source okvir za aplikacije napisan u PHP-u za razvoj web aplikacija. Sličan je Laravelu. Njegov dizajn slijedi MVC (Model-View-Controller) obrazac, što osigurava da je kod dobro organiziran i jednostavan za održavanje. Za vašu informaciju, MVC obrazac ima tri jasno definirane odvojene logike – Logika aplikacije (Model), Prezentacija (View) i Kontrola interakcije s korisnikom (Controller).

Svako može preuzeti, prilagoditi i koristiti CakePHP jer je besplatan i otvorenog koda. Usvajanjem CakePHP-a vaš proces web razvoja postaje učinkovitiji jer vam daje pristup stotinama unaprijed izrađenih funkcionalnosti i biblioteka koje ne morate graditi od nule. Funkcije poput autentifikacije korisnika i interakcija s bazom podataka dostupne su za upotrebu prema zadanim postavkama. CakePHP je također siguran po dizajnu i sprječava uobičajene web napade poput SQL injekcija i cross-site scriptinga (XSS).

Ultimativni priručnik za Ubuntu radnu površinu

Ovladnite Ubuntuom poput profesionalca - od prekrasnog prilagođavanja radne površine do moćne automatizacije putem terminala. Savršeno za programere, administratore sustava i napredne korisnike koji žele potpunu kontrolu nad svojim radnim okruženjem.

Ovo je postupak korišten za instalaciju i korištenje CakePHP PHP Frameworka na Ubuntuu 24.04.

Korak 1 – Instalirajte PHP

CakePHP je napisan u PHP-u i koristi se prilikom izrade web aplikacija u programskom jeziku PHP. Instalirajte PHP i sve ostale komponente pokretanjem sljedećih naredbi.

sudo apt update
apt install php php-cli php-intl php-json php-pdo php-mysql php-zip php-gd  php-mbstring php-curl php-xml php-pear php-bcmath

Provjerite verziju PHP-a

$ php --version
PHP 8.3.6 (cli) (built: Apr 15 2024 19:21:47) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.6, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.6, Copyright (c), by Zend Technologies

Učitani PHP moduli mogu se provjeriti sljedećim naredbama.

php -m

Korak 2 – Instalirajte PHP Composer

Composer je alat naredbenog retka koji se koristi za upravljanje ovisnostima aplikacija u PHP-u. Zamislite ga kao točne alternative pip koja se koristi u Pythonu, i npm koja se koristi u Node.js-u. Glavni zadatak Composer-a je pojednostaviti upravljanje vanjskim bibliotekama s verzijama potrebnim da vaša aplikacija pravilno radi.

Pokrenite sljedeće naredbe da biste instalirali Composer na svoj Ubuntu 24.04 sustav.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
sudo mv composer.phar /usr/local/bin/composer

Korak 3 – Instalirajte CakePHP na Ubuntu 24.04

Sada možemo izvršiti instalaciju CakePHP-a na našem Ubuntu 24.04 koristeći Composer.

Provjerite radi li Composer CLI alat na sustavu.

$ composer --version
Composer version 2.7.7 2024-06-10 22:11:12
PHP version 8.3.6 (/usr/bin/php8.3)

Stvorite novi direktorij za vaš CakePHP testni projekt – Pokrenite kao ne-root korisnik.

mkdir cakephp_projects

Navigirajte do stvorenog direktorija.

cd cakephp_projects

Instalirajte CakePHP koristeći composer tako da inicijalizirate novi projekt. Ovdje ga nazivamo mycake-app.

composer create-project cakephp/app mycake-app

Primjer izlaza iz izvršavanja naredbe.

.....
  - Installing mobiledetect/mobiledetectlib (3.74.3): Extracting archive
  - Installing sebastian/version (4.0.1): Extracting archive
  - Installing sebastian/type (4.0.0): Extracting archive
  - Installing sebastian/recursion-context (5.0.0): Extracting archive
  - Installing sebastian/object-reflector (3.0.0): Extracting archive
  - Installing sebastian/object-enumerator (5.0.0): Extracting archive
  - Installing sebastian/global-state (6.0.2): Extracting archive
  - Installing sebastian/exporter (5.1.2): Extracting archive
  - Installing sebastian/environment (6.1.0): Extracting archive
  - Installing sebastian/diff (5.1.1): Extracting archive
  - Installing sebastian/comparator (5.0.1): Extracting archive
  - Installing sebastian/code-unit (2.0.0): Extracting archive
  - Installing sebastian/cli-parser (2.0.1): Extracting archive
  - Installing phpunit/php-timer (6.0.0): Extracting archive
  - Installing phpunit/php-text-template (3.0.1): Extracting archive
  - Installing phpunit/php-invoker (4.0.0): Extracting archive
  - Installing phpunit/php-file-iterator (4.1.0): Extracting archive
  - Installing theseer/tokenizer (1.2.3): Extracting archive
  - Installing sebastian/lines-of-code (2.0.2): Extracting archive
  - Installing sebastian/complexity (3.2.0): Extracting archive
  - Installing sebastian/code-unit-reverse-lookup (3.0.0): Extracting archive
  - Installing phpunit/php-code-coverage (10.1.14): Extracting archive
  - Installing phar-io/version (3.2.1): Extracting archive
  - Installing phar-io/manifest (2.0.4): Extracting archive
  - Installing myclabs/deep-copy (1.12.0): Extracting archive
  - Installing phpunit/phpunit (10.5.20): Extracting archive
17 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
58 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
PHP CodeSniffer Config installed_paths set to ../../cakephp/cakephp-codesniffer,../../slevomat/coding-standard
No security vulnerability advisories found.
> App\Console\Installer::postInstall
Created `config/app_local.php` file
....

Za pristup CakePHP web sučelju, pokrenite donje naredbe.

$ cd  mycake-app
$ ./bin/cake server -H 0.0.0.0 -p 8099
Welcome to CakePHP v5.0.8 Console
-------------------------------------------------------------------------------
App : src
Path: /home/dev/cakephp_projects/mycake-app/src/
DocumentRoot: /home/dev/cakephp_projects/mycake-app/webroot
Ini Path:
-------------------------------------------------------------------------------
built-in server is running in http://0.0.0.0:8099/
You can exit with `CTRL-C`
[Fri Jun 14 07:45:48 2024] PHP 8.3.6 Development Server (http://0.0.0.0:8099) started

Pristupite CakePHP web konzoli na http://ServerIP:8099

Pritisnite CTRL+C za izlaz iz terminala.

Korak 4 – Kreirajte primjer aplikacije

Napravite novi kod kontrolera.

tee  src/Controller/HelloController.php<<EOF
<?php

namespace App\Controller;

class HelloController extends AppController
{
    public function index()
    {
    }
}
EOF

Kreiraj predložak

mkdir templates/Hello
tee templates/Hello/index.php<<EOF
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Hello World from CakePHP</title>
</head>
<body>
<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">
Hello to everyone using CakePHP Framework!
</div>
</body>
</html>
EOF

Testirajte svoj kod.

./bin/cake server -H 0.0.0.0 -p 8099

Pristupite svojoj testnoj aplikaciji na http://ServerIP:8099/Hello

U ovom smo članku uspješno instalirali i testirali CakePHP. Sljedeći koraci bit će proučavanje stranica dokumentacije CakePHP projekta kako biste bolje razumjeli što radi i koje funkcionalnosti su vam dostupne za korištenje.