Zoeken op website

Hoe CakePHP Framework te installeren op Ubuntu 24.04


In dit artikel zullen we het proces van het installeren en gebruiken van het CakePHP-framework op Ubuntu 24.04 behandelen. Als dit woord nieuw voor je is, CakePHP is een veelgebruikt open source applicatieframework geschreven in PHP, bedoeld voor de ontwikkeling van webapplicaties. Het is vergelijkbaar met Laravel. Het ontwerp volgt het MVC-patroon (Model-View-Controller), wat ervoor zorgt dat de code goed georganiseerd en gemakkelijk te onderhouden is. Voor de duidelijkheid, het MVC-patroon heeft drie gescheiden functies – Applicatielogica (Model), Presentatie (View) en Gebruikersinteractiecontrole (Controller).

Iedereen kan CakePHP downloaden, aanpassen en gebruiken omdat het gratis en open source is. Door CakePHP te gebruiken wordt je webontwikkelingsproces gestroomlijnd, aangezien het je toegang geeft tot honderden vooraf gebouwde functionaliteiten en bibliotheken die je niet vanaf nul hoeft te ontwikkelen. Voor functies zoals gebruikersauthenticatie en database-interacties zijn deze standaard beschikbaar voor gebruik. CakePHP is ook van nature veilig en voorkomt veelvoorkomende webaanvallen zoals SQL-injectie en cross-site scripting (XSS).

Het Ultieme Ubuntu Desktop Handboek

Beheers Ubuntu als een professional - van prachtige desktopaanpassingen tot krachtige terminalautomatisering. Perfect voor ontwikkelaars, systeembeheerders en ervaren gebruikers die volledige controle over hun werkruimte willen.

Hier is het proces dat wordt gebruikt om het CakePHP PHP-framework op Ubuntu 24.04 te installeren en te gebruiken.

Stap 1 – Installeer PHP

CakePHP is geschreven in PHP en wordt gebruikt bij het maken van webapplicaties in de programmeertaal PHP. Installeer PHP en alle andere componenten door de volgende opdrachten uit te voeren.

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

Controleer de versie van PHP

$ 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

Gekoppelde PHP-modules kunnen worden gecontroleerd met de volgende opdrachten.

php -m

Stap 2 – Installeer PHP Composer

Composer is een commandoregeltool die wordt gebruikt om applicatieafhankelijkheden in PHP te beheren. Zie het als een exacte tegenhanger van pip dat in Python wordt gebruikt, en npm dat in Node.js wordt gebruikt. Het belangrijkste werk van Composer is het vereenvoudigen van het beheer van externe bibliotheken met de versies die door je applicatie worden vereist om te functioneren.

Voer de volgende opdrachten uit om Composer op uw Ubuntu 24.04-systeem te installeren.

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

Stap 3 – Installeer CakePHP op Ubuntu 24.04

We kunnen nu de installatie van CakePHP op onze Ubuntu 24.04 uitvoeren met Composer.

Controleer of de Composer CLI-tool op het systeem werkt.

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

Maak een nieuwe map aan voor je CakePHP-testproject – Voer uit als niet-root gebruiker.

mkdir cakephp_projects

Navigeer naar de aangemaakte map.

cd cakephp_projects

Installeer CakePHP met Composer door een nieuw project te initialiseren. Hier noemen we het mycake-app.

composer create-project cakephp/app mycake-app

Voorbeelduitvoer van het uitvoeren van een opdracht.

.....
  - 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
....

Om toegang te krijgen tot de CakePHP-webinterface, voert u de onderstaande opdrachten uit.

$ 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

Toegang tot de CakePHP-webconsole op http://ServerIP:8099

Druk op CTRL+C om de terminalconsole te verlaten.

Stap 4 – Maak een voorbeeldapplicatie

Nieuwe controllercode maken.

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

namespace App\Controller;

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

Sjabloon maken

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

Test je code.

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

Toegang tot je testapp op http://ServerIP:8099/Hello

We hebben CakePHP succesvol geïnstalleerd en getest in dit artikel. De volgende stappen zijn het doorlezen van de documentatiepagina's van het CakePHP-project om een beter begrip te krijgen van wat het doet en welke functies beschikbaar zijn die je kunt benutten.