Cara Instal Projek PHP, Codeigniter dan Laravel di Hosting Cpanel - Rumah IT

Baru

recent

Cara Instal Projek PHP, Codeigniter dan Laravel di Hosting Cpanel

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Web hosting adalah layanan online yang memungkinkan Anda mempublikasikan file situs web Anda ke internet. Jadi, siapa pun yang memiliki akses ke internet memiliki akses ke situs web Anda. Dalam praktiknya, biasanya mengacu pada layanan yang Anda dapatkan dari penyedia web hosting.



cPanel adalah sebuah panel kontrol layanan hos web pada Linux yang memberikan tampilan grafis dan peralatan automasi yang dibuat untuk memudahkan proses hosting di sebuah situs web. cPanel menggunakan 3 tingkat struktur untuk memberikan fungsi administrator, agen, dan pemilik situs web untuk mengatur berbagai macam aspek dari situs web dan administrasi server melalui sebuah penjelajah web standar. Selain memberikan Guide User Interface untuk memudahkan pengguna, cPanel juga dilengkapi dengan perintah dalam teks dan berdasarkan API agar vendor perangkat lunak pihak ketiga, organisasi layanan hos web dan pengembang untuk otomatisasi sistem standar proses administrasinya.

Dalam artikel ini, kita akan membahas cara upload projek PHP di hosting cpanel. Baik native maupun framework seperti codeigniter dan laravel sebenarnya sama saja. Yang membedakan adalah letak konfigurasinya baik koneksi database, base url dan lainnya. 

Baca Juga :
1. 10 Ekstensi PHP Yang Sering Digunakan, Fungsi dan Cara Mengaktifkan
2. Cara Instal Projek Laravel di Localhost

Syarat projek anda dapat diinstal di hosting adalah :

  • Sudah mempunyai hosting, baik share hosting maupun cloud hosting.
  • Sudah mempunyai domain. Biasanya satu paket dalam pembelian hosting.


Adapun yang harus anda perhatikan sebelum menginstal projek anda di hosting adalah
:

  1. Pastikan hosting anda memenuhi system requirement yang diperlukan projek anda, baik dari versi PHP, ekstensi yang dibutuhkan, versi PHP dan konfigurasi web server yang sesuai dengan projek anda.
  2. Pastikan disk space pada hosting anda mencukupi sesuai dengan ukuran source code projek anda. Usahakan untuk membeli hosting yang unlimited disk space dan unlimited bandwith.


Secara garis besar, proses instal projek php apapun di hosting termasuk CMS seperti wordpress, drupal, noodle dan lainnya terbagi menjadi 4 urutan proses, yaitu :

  1. Menyiapkan domain atau sub domain
  2. Upload file projek di file manajer
  3. Menyiapkan database.
  4. Konfigurasi projek.
Semua projek PHP baik yang menggunakan framework maupun CMS untuk proses dari nomor 1-3 adalah sama. Kecuali yang urutan nomor 4, karena setiap projek atau source code mempunyai konfigurasi yang bervariasi. Baiklah untuk tata cara instal projek ke hosting cpanel adalah sebagai berikut :

1. Menyiapkan Domain dan Sub Domain

Silahkan login ke akun cpanel. Ada dua cara untuk login ke akun cpanel. Pertama melalui member area atau client area yang disediakan oleh masing-masing provider hosting. Yang kedua melalui url langsung, dengan cara mengakses https://domainanda.com/cpanel .

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Berikutnya anda harus menentukan projek akan diinstal di domain utama atau di sub domain. Jika ingin diinstal di domain utama, maka tidak perlu menyiapkan sub domain, langsung ke langkah berikutnya. Namun jika anda memutuskan ingin menginstal di sub domain dengan alasan domain utama sudah ada isinya, silahkan buat sub domain terlebih dahulu. Pada menu cpanel pilih pada grup Domains.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Tulis nama subdomain, misalnya contoh yang diikuti dengan nama domain utama. Catat juga Document Root yang nantinya digunakan sebagai lokasi tempat anda upload source code di file manager. Terakhir klik Create.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel


2. Upload file projek di file manager.

Kembali ke halaman utama cpanel, arahkan ke grup Files dan pilih File Manager

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Jika anda menginstal projek di domain utama, maka lokasi document rootnya ada di public_html. Namun jika anda menginstal projek di sub domain, document rootnya sesuai yang anda catat saat membuat sub domain pada langkah pertama.


Arahkan ke folder document root sub domain, biasanya disitu sudah ada beberapa file bawaan hosting. Silahkan kosongkan terlebih dahulu semua filenya.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Kemudian pilih menu Upload pada navbar. Silahkan upload source code projek anda disini dalam format ZIP agar proses upload berjalan cepat.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel
Setelah upload selesai, kembali ke file manager. Lalu ekstrak file ZIP dengan cara klik kanan pilih Extract.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Maka akan muncul susunan folder dan file projek seperti dibawah ini. Pastikan semua file dan folder sudah ada di file manager.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

3. Menyiapkan Database

Untuk website dinamis pasti membutuhkan databse untuk proses pengolahan data. Kecuali jika projek anda berupa website statis seperti landing page, template, mock up dan prototype biasanya tidak memerlukan database. 

Pada halaman utama cpanel arahkan ke grup Databases kemudian pilih MySQL Databases. Saya anggap projek anda menggunakan database mysql, jika menggunakan database lain seperti PostgreSQL atau MongoDB silahkan kontak penyedia hosting untuk menanyakan ketersediaannya.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Yang kita butuhkan adalah nama database, user database dan password database. Ketiga parameter ini yang nantinya akan kita gunakan untuk menghubungkan projek kita dengan database mysql. Jadi pastikan anda mencatatnya untuk kemudahan.

Pertama buat database baru kemudian klik Create Database.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Yang kedua buat user mysql baru. Masukkan nama pengguna dan password dengan tingkat kesulitan strong. Kemudian klik Create User.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Selanjutnya arahkan pada menu Add User to Database agar user tersebut dapat mengakses database. Pilih nama user dan nama database yang sudah dibuat pada langkah sebelumnya. Klik Add.
Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel
Kemudian kita atur untuk user privileges nya. Beri centang pada ALL PRIVILEGES agar user mendapatkan akses penuh ke database. Klik Save atau OK.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel

Kembali lagi ke menu awal cpanel, pada grup Databases, pilih phpMyAdmin.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel
Pilih database yang sudah dibuat, klik menu Import. Silahkan import database anda dalam format .sql kemudian klik Go. Tunggu sampai file database berhasil diimport. Lama atau tidaknya tergantung dari ukuran dan banyaknya query file sql yang diimport.

Cara Instal Projek PHP, Codeigniter, Laravel di Hosting Cpanel


4. Konfigurasi Projek

Konfigurasi dasar projek PHP pada umumnya hanya koneksi database dan base url. Sedangkan konfigurasi lanjutan seperti pengaturan SMTP, cronjob, API Key dan lainnya tergantung dari keperluan suatu projek. Disini saya akan menjelaskan konfigurasi dasar beberapa projek php diantaranya PHP Native, Codeigniter 2 dan 3, Codeigniter 4 dan Laravel.

A. Konfigurasi PHP Native.

Projek aplikasi yang dibuat menggunakan php native umumnya mempunyai susunan folder dan design pattern yang tidak baku. Artinya setiap projek mempunyai file konfigurasi sendiri-sendiri tergantung selera pengembangnya. Biasanya pada aplikasi native, file untuk konfigurasi database diberi nama koneksi.php atau config.php . Contohnya seperti berikut :

<?php
	//memeriksa apakah ada session yang aktif atau tidak
	if(!isset($_SESSION)){ 
		//memulai session
        session_start(); 
    } 
	//setting server, username, password dan database
	$server = "localhost";
	$username = "root";
	$password = "";
	$database = "dbsekolah";
	// setting web root
	$thisFile = str_replace('\\', '/', __FILE__);
	$docRoot = $_SERVER['DOCUMENT_ROOT'];
	$webRoot  = str_replace(array($docRoot, 'library/config.php'), '', $thisFile);
	define('WEB_ROOT', $webRoot);
	//konek ke server
	$konek = mysql_connect($server, $username, $password) or die ("Gagal konek ke server MySQL" .mysql_error());
	//konek ke database
	$bukadb = mysql_select_db($database) or die ("Gagal membuka database $database" .mysql_error());
	date_default_timezone_set('Asia/Jakarta');
?>

B. Konfigurasi Codeigniter 3

Pada aplikasi yang dibuat dengan framework, mempunyai susunan file dan design pattern yang sama. Artinya siapapun pengembangnya , lokasi dan nama file konfigurasinya sama. Untuk projek yang dibuat menggunakan Codeigniter 3, ada dua file dasar yang harus kita atur yaitu application/config/config.php dan application/config/database.php .

Contoh potongan config.php untuk menentukan base url.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');

/*
|--------------------------------------------------------------------------
| Base Site URL
|--------------------------------------------------------------------------
|
|
*/
$config['base_url'] = "https://domainsaya.com";
atau anda juga bisa mengatur base url secara dinamis (otomatis membaca nama domain).
<?php
defined('BASEPATH') OR exit('No direct script access allowed');

/*
|--------------------------------------------------------------------------
| Base Site URL
|--------------------------------------------------------------------------
|
|
*/
$config['base_url'] = (isset($_SERVER['HTTPS']) ? "https://" : "http://").$_SERVER['HTTP_HOST'].
						str_replace(basename($_SERVER['SCRIPT_NAME']),"",
						$_SERVER['SCRIPT_NAME']);

C. Konfigurasi Codeigniter 4

Berbeda dengan codeigniter 3, untuk codeigniter 4 lokasi konfigurasinya ada di file .env yang berada di direktori utama. Contoh potongan file .env di codeigniter 4 :
#--------------------------------------------------------------------
# Example Environment Configuration file
#
# This file can be used as a starting point for your own
# custom .env files, and contains most of the possible settings
# available in a default install.
#
# By default, all of the settings are commented out. If you want
# to override the setting, you must un-comment it by removing the '#'
# at the beginning of the line.
#--------------------------------------------------------------------

#--------------------------------------------------------------------
# ENVIRONMENT
#--------------------------------------------------------------------

# CI_ENVIRONMENT = production

#--------------------------------------------------------------------
# APP
#--------------------------------------------------------------------

# app.baseURL = ''
# If you have trouble with `.`, you could also use `_`.
# app_baseURL = ''
# app.forceGlobalSecureRequests = false

# app.sessionDriver = 'CodeIgniter\Session\Handlers\FileHandler'
# app.sessionCookieName = 'ci_session'
# app.sessionExpiration = 7200
# app.sessionSavePath = null
# app.sessionMatchIP = false
# app.sessionTimeToUpdate = 300
# app.sessionRegenerateDestroy = false

# app.CSPEnabled = false

#--------------------------------------------------------------------
# KONFIGURASI DATABASE
#--------------------------------------------------------------------

database.default.hostname = localhost
database.default.database = ci4
database.default.username = root
database.default.password = pass
database.default.DBDriver = MySQLi
database.default.DBPrefix =
database.default.port = 3306
Namun beberapa developer ada juga yang pengaturan koneksi databasenya ditaruh di file app/Config/Database.php . Contoh potongan kode Database.php :
<?php

namespace Config;

use CodeIgniter\Database\Config;

/**
 * Database Configuration
 */
class Database extends Config
{
    /**
     * The directory that holds the Migrations
     * and Seeds directories.
     *
     * @var string
     */
    public $filesPath = APPPATH . 'Database' . DIRECTORY_SEPARATOR;

    /**
     * Lets you choose which connection group to
     * use if no other is specified.
     *
     * @var string
     */
    public $defaultGroup = 'default';

    /**
     * The default database connection.
     *
     * @var array
     */
    public $default = [
        'DSN'      => '',
        'hostname' => 'localhost',
        'username' => 'root',
        'password' => 'pass',
        'database' => 'dbsaya',
        'DBDriver' => 'MySQLi',
        'DBPrefix' => '',
        'pConnect' => false,
        'DBDebug'  => (ENVIRONMENT !== 'production'),
        'charset'  => 'utf8',
        'DBCollat' => 'utf8_general_ci',
        'swapPre'  => '',
        'encrypt'  => false,
        'compress' => false,
        'strictOn' => false,
        'failover' => [],
        'port'     => 3306,
    ];
Sedangkan untuk pengaturan base url pada Codeigniter 4 ada di file app/Config/App.php . Berikut potongan kode file App.php :
<?php

namespace Config;

use CodeIgniter\Config\BaseConfig;
use CodeIgniter\Session\Handlers\FileHandler;

class App extends BaseConfig
{
    /**
     * --------------------------------------------------------------------------
     * Base Site URL
     * --------------------------------------------------------------------------
     *
     * URL to your CodeIgniter root. Typically this will be your base URL,
     * WITH a trailing slash:
     *
     *    http://example.com/
     *
     * If this is not set then CodeIgniter will try guess the protocol, domain
     * and path to your installation. However, you should always configure this
     * explicitly and never rely on auto-guessing, especially in production
     * environments.
     *
     * @var string
     */
    public $baseURL = 'https://domainsaya.com';

D. Konfigurasi Laravel

Untuk framework laravel, semua pengaturan dasar baik base url, koneksi database dan environment semua ada di file .env yang berada di root folder. Berikut potongan kode file .env di laravel :
APP_NAME=Laravel
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_URL=https://domainsaya.com

LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=dbsaya
DB_USERNAME=root
DB_PASSWORD=pass

BROADCAST_DRIVER=log
CACHE_DRIVER=file
FILESYSTEM_DISK=local
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

MEMCACHED_HOST=127.0.0.1

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_MAILER=smtp
MAIL_HOST=mailhog
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_HOST=
PUSHER_PORT=443
PUSHER_SCHEME=https
PUSHER_APP_CLUSTER=mt1

VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
VITE_PUSHER_HOST="${PUSHER_HOST}"
VITE_PUSHER_PORT="${PUSHER_PORT}"
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

Pada tutorial diatas kita sudah melakukan instalasi projek php ke cpanel hosting dengan berbagai macam versi PHP. Intinya dalam proses instal hosting yang perlu disiapkan adalah domain, database dan file projek yang akan diunggah. Selanjutnya masing-masing projek mempunyai konfigurasi yang berbeda-beda tergantung metode dan framework yang digunakan saat pembuatan aplikasi.
All Rights Reserved by Rumah IT - Rumah Teknologi Informasi © 2013 - 2022
Powered By Blogger

Contact Form

Name

Email *

Message *

Powered by Blogger.