Ubuntu 24.04'e CakePHP Framework Nasıl Kurulur


Bu makalede, Ubuntu 24.04 üzerinde CakePHP framework'ünün kurulumu ve kullanımı sürecini ele alacağız. Bu terim size yeni geliyorsa, CakePHP, web uygulamaları geliştirmek için kullanılan PHP ile yazılmış yaygın bir açık kaynak uygulama framework'üdür. Laravel'e benzerdir. Tasarım deseni MVC (Model-Görünüm-Kontrolcü) prensibini takip eder, bu da kodun iyi organize edilmesini ve kolayca bakım yapılabilmesini sağlar. Bilmeniz için, MVC deseninin üç ayrı tanımlanmış mantığı vardır – Uygulama mantığı (Model), Sunum (Görünüm) ve Kullanıcı etkileşim kontrolü (Kontrolcü).

CakePHP, ücretsiz ve açık kaynak olduğundan herkes tarafından indirilebilir, özelleştirilebilir ve kullanılabilir. CakePHP'yi benimseyerek web geliştirme süreciniz kolaylaşır çünkü sıfırdan oluşturmanız gerekmeyen yüzlerce hazır işlevsellik ve kütüphaneye erişim sağlar. Kullanıcı doğrulama ve veritabanı etkileşimleri gibi işlevler varsayılan olarak kullanılabilir. CakePHP ayrıca tasarım gereği güvenlidir ve SQL enjeksiyonu ve çapraz site betikleme (XSS) gibi yaygın web saldırılarını engeller.

Nihai Ubuntu Masaüstü Kılavuzu

Ubuntu'yu bir profesyonel gibi keşfedin - güzel masaüstü özelleştirmeden güçlü terminal otomasyonuna kadar. Çalışma alanlarının tam kontrolünü isteyen geliştiriciler, sistem yöneticileri ve ileri düzey kullanıcılar için mükemmel.

İşte Ubuntu 24.04 üzerinde CakePHP PHP Framework'ü kurmak ve kullanmak için kullanılan süreç.

Adım 1 – PHP'yi Kur

CakePHP, PHP üzerinde yazılmıştır ve PHP programlama dilinde web uygulamaları oluştururken kullanılmak içindir. PHP ve diğer tüm bileşenleri aşağıdaki komutları çalıştırarak kurabilirsiniz.

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

PHP sürümünü kontrol et

$ 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

Yüklü PHP modülleri aşağıdaki komutlarla kontrol edilebilir.

php -m

Adım 2 – PHP Composer Kurulumu

Composer, PHP'deki uygulama bağımlılıklarını yönetmek için kullanılan bir komut satırı aracıdır. Bunu, Python'da kullanılan pip ve Node.js'te kullanılan npm gibi düşünebilirsiniz. Composer'ın temel görevi, uygulamanızın çalışması için gerekli olan sürümlerdeki dış kütüphanelerin yönetimini basitleştirmektir.

Ubuntu 24.04 sisteminize Composer kurmak için aşağıdaki komutları çalıştırın.

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

Adım 3 – Ubuntu 24.04 üzerinde CakePHP kurun

Artık Ubuntu 24.04 üzerinde Composer kullanarak CakePHP kurulumunu gerçekleştirebiliriz.

Composer CLI aracının sistemde çalışıp çalışmadığını kontrol edin.

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

CakePHP test projeniz için yeni bir dizin oluşturun – root olmayan kullanıcı olarak çalıştırın.

mkdir cakephp_projects

Oluşturulan dizine gidin.

cd cakephp_projects

Yeni bir proje başlatarak composer kullanarak CakePHP'yi kurun. Burada buna mycake-app adını veriyoruz.

composer create-project cakephp/app mycake-app

Komut çalıştırma işleminden örnek çıktı.

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

CakePHP web arayüzüne erişmek için aşağıdaki komutları çalıştırın.

$ 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

CakePHP web konsoluna http://ServerIP:8099 üzerinden erişin

Terminal konsolundan çıkmak için CTRL+C tuşuna basın.

Adım 4 – Örnek uygulama oluştur

Yeni kontrolcü kodu oluştur.

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

namespace App\Controller;

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

Şablon oluştur

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

Kodunuzu test edin.

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

Test uygulamanıza http://ServerIP:8099/Hello üzerinden erişin

Bu makalede CakePHP'yi başarıyla yükledik ve test ettik. Bir sonraki adımlar, CakePHP projesiyle ilgili dokümantasyon sayfalarını okuyarak ne yaptığını ve avantaj sağlayabileceğiniz mevcut işlevsellikleri daha iyi anlamak olacaktır.