Facebook Twitter Instagram
    TecAdmin
    • Home
    • Ubuntu 20.04
      • Upgrade Ubuntu
      • Install Java
      • Install Node.js
      • Install Docker
      • Install LAMP Stack
    • Tutorials
      • AWS
      • Shell Scripting
      • Docker
      • Git
      • MongoDB
    • FeedBack
    • Submit Article
    • About Us
    Facebook Twitter Instagram
    TecAdmin
    Home»General Articles»How to Install CakePHP on Debian 9 (Stretch)

    How to Install CakePHP on Debian 9 (Stretch)

    RahulBy RahulDecember 11, 20183 Mins ReadUpdated:January 11, 2019

    CakePHP is a PHP framework for rapid development of web application. Recently CakePHP has released its latest version 3.6 with a variety of changes to improve speed and security. This article will help you to Setup CakePHP 3.6 (or latest version) on Debian 9 (Stretch) Linux system.

    Requirements:-

    • PHP 5.5.9 or greater (including PHP 7).
    • PHP mbstring extension
    • PHP intl extension
    • MySQL (5.1.10 or greater)

    Step 1 – Install LAMP Server

    You can skip this step for the system having LAMP setup already. If you don’t have LAMP installed on your system proceed with the following commands to Setup LAMP on your Linux Server.

    sudo apt update
    sudo apt install curl apache2 mysql-server libapache2-mod-php
    sudo apt install php php-mysql php-mbstring php-intl php-xml 
    

    Step 2 – Install Composer

    Now CakePHP is using composer for managing dependencies. So first we need to install Composer using following command on the system. If already installed then just update to latest version.

    Install Composer:

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

    Update Composer:

    composer self-update
    

    Step 3 – Create CakePHP 3 Application

    After installing the composer on your system. Let’s create CakePHP application named “MyApp” using composer command as below.

    composer create-project --prefer-dist cakephp/app MyApp
    

    Setup CakePHP 3

    Now set the proper permission for your project files. For Debian based system Apache default uses www-data as the user. So change files ownership as per your setup.

    chown -R www-data:www-data MyApp
    chmod -R 755 MyApp
    chmod -R 777 MyApp/tmp
    

    Step 4 – Setup Database for CakePHP

    For this article, we are using MySQL as the database server. First use following commands to create a MySQL database and create.

    MySQL
    1
    2
    3
    4
    mysql> CREATE DATABASE mydb;
    mysql> GRANT ALL ON mydb.* to 'myuser'@'localhost' IDENTIFIED BY '_password_';
    mysql> FLUSH PRIVILEGES;
    mysql> quit

    Now edit config/app.php configuration file and search for your database setting. Make necessary changes as per below details

        'Datasources' => [
            'default' => [
                'className' => 'Cake\Database\Connection',
                'driver' => 'Cake\DatabaseDriver\Mysql',
                'persistent' => false,
                'host' => 'localhost',
                //'port' => 'nonstandard_port_number',
                'username' => 'myuser',
                'password' => '_password_',
                'database' => 'mydb',
                'encoding' => 'utf8',
                'timezone' => 'UTC',
                'cacheMetadata' => true,
    

    Here, you have two options to run your CakePHP application. For development system follow the Step 5(A) and for Production deployment follow step 5(B).

    Step 5(A) – Deploy CakePHP on Development System

    First is to use its built-in web server preferred for development purpose installation. This will make your application available at http://host:port. From the app directory, execute:

    bin/cake server
    

    By default, without any arguments provided, this will serve your application at http://localhost:8765/.

    You can also specify your own host and port like below

    bin/cake server -H 192.168.10.123 -p 1234
    

    This will serve your application at http://192.168.10.123:1234/

    Step 5(B) – Deploy CakePHP on Production System

    Second is deploy with external web servers like Apache its preferred for production use. Let’s create an Apache VirtualHost configuration file using the following content.

    <VirtualHost *:80>
        ServerAdmin [email protected]
        ServerName cakephp.tecadmin.net
        DocumentRoot /var/www/html/MyApp/webroot
        <Directory /var/www/html/MyApp>
              Allowoverride All
        </Directory>
    </VirtualHost>
    

    Change the ServerName and document root as per your setup. After that reload your Apache service and access your CakePHP like http://cakephp.example.com.

    cakephp Debian 9
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email WhatsApp
    Previous ArticleHow to Install Swift on Ubuntu 18.04 LTS
    Next Article How To Install Swift on Debian 9 (Stretch)

    Related Posts

    How to Find Django Install Location in Linux

    Updated:April 27, 20221 Min Read

    (Resolved) – ReactJS 404 Error on Page Reload

    2 Mins Read

    Adding a New SSH Key in GitHub

    Updated:April 1, 20223 Mins Read

    13 Best Linux Terminal Emulators and Bash Editors

    8 Mins Read

    How To Install Oracle VirtualBox on Debian 11

    2 Mins Read

    10 Best Linux FTP Clients in 2022

    5 Mins Read

    Leave A Reply Cancel Reply

    Recent Posts
    • How to Install JAVA on Ubuntu 22.04
    • Switching Display Manager in Ubuntu – GDM, LightDM & SDDM
    • Changing the Login Screen Background in Ubuntu 22.04 & 20.04
    • How To Install PHP (8.1, 7.4 or 5.6) on Ubuntu 22.04
    • (Resolved) Please install all available updates for your release before upgrading
    Facebook Twitter Instagram Pinterest
    © 2022 Tecadmin.net. All Rights Reserved | Terms  | Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.