15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai
01.11.2024
2 +1

Cara Menginstal PHP Composer di Shared/Virtual Hosting: Panduan Lengkap

PHP Composer adalah pengelola dependensi standar de facto untuk PHP, memungkinkan pengembang untuk mendeklarasikan, menginstal, dan mengelola perpustakaan yang proyek mereka andalkan. Baik Anda membangun aplikasi Laravel, API Symfony, atau proyek PHP kustom, Composer adalah alat yang tak tergantikan dalam alur kerja Anda.

Panduan komprehensif ini membimbing Anda melalui setiap langkah penginstalan PHP Composer di lingkungan hosting virtual atau bersama — dari akses SSH hingga konfigurasi global dan penggunaan dunia nyata.

Apa Itu PHP Composer dan Mengapa Anda Membutuhkannya?

PHP Composer adalah pengelola paket yang menangani manajemen dependensi tingkat proyek. Daripada mengunduh perpustakaan secara manual dan mengelola autoloading, Composer menyelesaikan dependensi secara otomatis, mengunduh versi yang benar, dan menghasilkan autoloader yang dioptimalkan.

Manfaat utama meliputi:

  • Penyelesaian dependensi otomatis — Composer menangani konflik versi dan dependensi bersarang.
  • Build yang dapat direproduksi — File composer.lock memastikan setiap anggota tim dan lingkungan deployment menggunakan versi paket yang identik.
  • Ekosistem yang luas — Akses ke lebih dari 350.000 paket di Packagist, repositori Composer default.
  • Autoloading PSR-4 — Menghilangkan pernyataan require dan include manual di seluruh basis kode Anda.

Jika Anda menjalankan aplikasi PHP di Shared Web Hosting atau lingkungan VPS Hosting, menginstal Composer adalah salah satu langkah pertama menuju alur kerja pengembangan yang profesional dan dapat dipertahankan.

Prasyarat

Sebelum Anda memulai, konfirmasi bahwa persyaratan berikut terpenuhi:

PersyaratanDetail
Akses hostingSSH access diaktifkan di akun hosting Anda
Versi PHPPHP 7.2 atau lebih tinggi (PHP 8.x sangat direkomendasikan)
Ekstensi PHPopenssl, phar, mbstring, json harus diaktifkan
IzinKemampuan untuk menulis ke direktori home Anda atau direktori di $PATH Anda
Klien terminalTerminal (macOS/Linux) atau PuTTY / Windows Terminal (Windows)

> Catatan: Jika Anda berada di paket shared hosting terkelola tanpa akses SSH, hubungi penyedia hosting Anda untuk mengaktifkannya. Paket Shared Web Hosting AlexHost mencakup akses SSH, memberikan Anda kontrol yang Anda butuhkan.

Langkah 1: Terhubung ke Server Anda melalui SSH

Buka aplikasi terminal Anda dan buat koneksi SSH ke akun hosting Anda:

ssh username@yourdomain.com

Ganti username dengan nama pengguna SSH aktual Anda dan yourdomain.com dengan nama domain atau alamat IP server Anda.

Contoh:

ssh john@203.0.113.45

Setelah diautentikasi, Anda akan mendarat di direktori home Anda (biasanya /home/username/). Anda dapat mengonfirmasi lokasi Anda saat ini dengan:

pwd

Langkah 2: Verifikasi PHP Tersedia

Sebelum mengunduh Composer, konfirmasi bahwa PHP diinstal dan dapat diakses dari baris perintah:

php -v

Anda harus melihat output serupa dengan:

PHP 8.2.10 (cli) (built: Sep  5 2023 08:15:22) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.10, Copyright (c) Zend Technologies

Jika PHP tidak ditemukan, atau versinya di bawah 7.2, hubungi penyedia hosting Anda atau tingkatkan lingkungan Anda. Pengguna di paket VPS Hosting memiliki kontrol penuh untuk menginstal atau memperbarui versi PHP sesuai kebutuhan.

Juga verifikasi bahwa ekstensi yang diperlukan dimuat:

php -m | grep -E 'openssl|phar|mbstring|json'

Keempat ekstensi harus muncul dalam output.

Langkah 3: Unduh Installer Composer

Composer menyediakan skrip installer berbasis PHP resmi. Unduh menggunakan perintah berikut:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

Ini mengunduh skrip installer composer-setup.php ke direktori kerja Anda saat ini.

Langkah 4: Verifikasi Integritas Installer

Langkah ini sangat penting untuk keamanan. Selalu verifikasi hash SHA-384 installer sebelum menjalankannya untuk memastikan file tidak telah dimanipulasi atau rusak selama pengunduhan.

4a. Ambil hash yang diharapkan dari halaman Kunci Publik Composer resmi:

Kunjungi https://composer.github.io/pubkeys.html untuk mengambil hash installer terbaru.

4b. Jalankan perintah verifikasi:

HASH="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"

Kemudian bandingkan dengan hash yang dipublikasikan:

php -r "if (hash_file('sha384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Jika Anda melihat “Installer verified”, lanjutkan. Jika Anda melihat “Installer corrupt”, berhenti segera, hapus file, dan unduh ulang.

Alternatifnya, Anda dapat menggunakan one-liner dari dokumentasi Composer resmi, mengganti EXPECTED_HASH dengan nilai dari halaman kunci publik:

php -r "if (hash_file('sha384', 'composer-setup.php') === 'EXPECTED_HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Langkah 5: Jalankan Installer Composer

Dengan installer terverifikasi, jalankan untuk menginstal Composer:

php composer-setup.php

Setelah eksekusi berhasil, Anda akan melihat output seperti:

All settings correct for using Composer
Downloading...

Composer (version 2.x.x) successfully installed to: /home/username/composer.phar
Use it: php composer.phar

File composer.phar sekarang dibuat di direktori Anda saat ini. Pada tahap ini, Anda sudah dapat menggunakan Composer dengan memanggil php composer.phar, tetapi membuatnya dapat diakses secara global jauh lebih nyaman.

Langkah 6: Bersihkan Skrip Installer

Hapus skrip setup karena tidak lagi diperlukan:

php -r "unlink('composer-setup.php');"

Langkah 7: Instal Composer Secara Global

Untuk menjalankan Composer dari mana saja di sistem Anda menggunakan hanya perintah composer, pindahkan biner composer.phar ke direktori yang disertakan dalam $PATH sistem Anda.

Di VPS atau Dedicated Server (dengan akses sudo):

sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer

Di Shared Hosting (tanpa akses sudo):

Jika Anda tidak memiliki hak istimewa sudo, instal Composer secara lokal di dalam direktori home Anda:

mkdir -p ~/bin
mv composer.phar ~/bin/composer
chmod +x ~/bin/composer

Kemudian tambahkan ~/bin ke $PATH Anda dengan menambahkan baris berikut ke ~/.bashrc atau ~/.bash_profile Anda:

export PATH="$HOME/bin:$PATH"

Muat ulang konfigurasi shell:

source ~/.bashrc

> Pro Tip: Jika Anda membutuhkan akses root penuh dan kontrol lebih besar atas lingkungan PHP Anda, pertimbangkan untuk upgrade ke paket VPS Hosting atau Dedicated Server untuk konfigurasi tingkat sistem tanpa batasan.

Langkah 8: Verifikasi Instalasi

Konfirmasi Composer diinstal dan dapat diakses secara global:

composer --version

Output yang diharapkan:

Composer version 2.x.x 2024-xx-xx xx:xx:xx

Untuk diagnostik lengkap lingkungan Anda, jalankan:

composer diagnose

Perintah ini memeriksa konfigurasi PHP Anda, konektivitas jaringan, dan pengaturan Composer, melaporkan masalah potensial apa pun.

Langkah 9: Menggunakan Composer untuk Mengelola Dependensi PHP

Sekarang Composer diinstal, berikut cara menggunakannya secara efektif di proyek PHP Anda.

9a. Inisialisasi Proyek Baru

Navigasi ke direktori proyek Anda dan inisialisasi proyek Composer baru:

cd /path/to/your/project
composer init

Wizard interaktif akan meminta Anda untuk:

  • Nama paket (misalnya, yourname/project)
  • Deskripsi
  • Informasi penulis
  • Stabilitas minimum
  • Dependensi yang diperlukan

Ini menghasilkan file composer.json — jantung konfigurasi dependensi proyek Anda.

9b. Instal Paket

Untuk menambahkan perpustakaan ke proyek Anda, gunakan perintah require:

composer require vendor/package-name

Contoh dunia nyata:

# Install Guzzle HTTP client
composer require guzzlehttp/guzzle

# Install Carbon date library
composer require nesbot/carbon

# Install Monolog logging library
composer require monolog/monolog

Composer akan menyelesaikan dependensi, mengunduh paket ke direktori vendor/, dan memperbarui composer.json dan composer.lock.

9c. Instal Semua Dependensi dari composer.json

Saat menerapkan proyek atau mengkloning repositori, instal semua dependensi yang dideklarasikan dengan:

composer install

Untuk lingkungan produksi, gunakan flag --no-dev untuk melewati paket khusus pengembangan:

composer install --no-dev --optimize-autoloader

9d. Perbarui Dependensi

Untuk memperbarui semua paket ke versi terbaru yang diizinkan:

composer update

Untuk memperbarui paket tertentu:

composer update vendor/package-name

9e. Autoloading

Composer secara otomatis menghasilkan autoloader. Sertakan di bagian atas titik masuk PHP Anda:

<?php
require 'vendor/autoload.php';

Baris tunggal ini memberi Anda akses ke semua paket yang diinstal dan namespace kustom apa pun yang Anda tentukan di composer.json.

Pemecahan Masalah Umum

MasalahPenyebabSolusi
composer: command not foundBiner tidak ada di $PATHTambahkan direktori instalasi ke $PATH dan muat ulang shell
PHP Fatal error: Allowed memory size exhaustedBatas memori PHP terlalu rendahJalankan php -d memory_limit=-1 /usr/local/bin/composer install
SSL certificate problemSertifikat CA hilangInstal paket ca-certificates atau perbarui konfigurasi openssl PHP
The requested PHP extension ... is missingEkstensi yang diperlukan dinonaktifkanAktifkan ekstensi di php.ini atau hubungi host Anda
Izin ditolak di /usr/local/binTidak ada akses sudoInstal Composer secara lokal di ~/bin seperti yang dijelaskan di Langkah 7

Menjaga Composer Tetap Terbaru

Composer menyertakan mekanisme pembaruan diri bawaan. Jalankan perintah berikut secara berkala untuk memastikan Anda memiliki versi terbaru:

composer self-update

Untuk kembali ke versi sebelumnya jika diperlukan:

composer self-update --rollback

Tetap terkini memastikan Anda mendapat manfaat dari patch keamanan terbaru, perbaikan bug, dan peningkatan kinerja.

Memilih Lingkungan Hosting yang Tepat untuk Pengembangan PHP

15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai