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.lockmemastikan 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
requiredanincludemanual 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:
| Persyaratan | Detail |
|---|---|
| Akses hosting | SSH access diaktifkan di akun hosting Anda |
| Versi PHP | PHP 7.2 atau lebih tinggi (PHP 8.x sangat direkomendasikan) |
| Ekstensi PHP | openssl, phar, mbstring, json harus diaktifkan |
| Izin | Kemampuan untuk menulis ke direktori home Anda atau direktori di $PATH Anda |
| Klien terminal | Terminal (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.comGanti username dengan nama pengguna SSH aktual Anda dan yourdomain.com dengan nama domain atau alamat IP server Anda.
Contoh:
ssh john@203.0.113.45Setelah diautentikasi, Anda akan mendarat di direktori home Anda (biasanya /home/username/). Anda dapat mengonfirmasi lokasi Anda saat ini dengan:
pwdLangkah 2: Verifikasi PHP Tersedia
Sebelum mengunduh Composer, konfirmasi bahwa PHP diinstal dan dapat diakses dari baris perintah:
php -vAnda 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 TechnologiesJika 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.phpSetelah 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.pharFile 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/composerDi 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/composerKemudian 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 --versionOutput yang diharapkan:
Composer version 2.x.x 2024-xx-xx xx:xx:xxUntuk diagnostik lengkap lingkungan Anda, jalankan:
composer diagnosePerintah 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 initWizard 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-nameContoh 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/monologComposer 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 installUntuk lingkungan produksi, gunakan flag --no-dev untuk melewati paket khusus pengembangan:
composer install --no-dev --optimize-autoloader9d. Perbarui Dependensi
Untuk memperbarui semua paket ke versi terbaru yang diizinkan:
composer updateUntuk memperbarui paket tertentu:
composer update vendor/package-name9e. 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
| Masalah | Penyebab | Solusi |
|---|---|---|
composer: command not found | Biner tidak ada di $PATH | Tambahkan direktori instalasi ke $PATH dan muat ulang shell |
PHP Fatal error: Allowed memory size exhausted | Batas memori PHP terlalu rendah | Jalankan php -d memory_limit=-1 /usr/local/bin/composer install |
SSL certificate problem | Sertifikat CA hilang | Instal paket ca-certificates atau perbarui konfigurasi openssl PHP |
The requested PHP extension ... is missing | Ekstensi yang diperlukan dinonaktifkan | Aktifkan ekstensi di php.ini atau hubungi host Anda |
Izin ditolak di /usr/local/bin | Tidak ada akses sudo | Instal 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-updateUntuk kembali ke versi sebelumnya jika diperlukan:
composer self-update --rollbackTetap terkini memastikan Anda mendapat manfaat dari patch keamanan terbaru, perbaikan bug, dan peningkatan kinerja.
