Penggunaan fungsi SAPI pada PHP


#PHP

Sebenarnya kita tidak butuh XAMPP, apache2, atau web server lainnya untuk menjalankan PHP di localhost.

Karena PHP sendiri sudah menyediakan server bawaan yang bisa kita gunakan untuk Development.

Pada PHP versi 5.4.0, CLI SAPI menyediakan fitur build-in web server yang memungkinkan kita untuk membuat server web dari perintah command line (CLI).

Mengapa lebih baik menggunakan ini daripada XAMPP atau apache2?

Karena dengan web server ini berjalan di console dan kita akan mudah mengetahui error dari sana.

Oh ya, server bawaan PHP ini tidak direkomendasikan untuk digunakan pada lingkungan produksi (prodcution).

Membuat Server dari Commnd Line

Pastikan PHP sudah terinstal, kemudian buat sebuah server dengan perintah berikut ini.

Perhatikan argumen -S, argumen tersebut menggunakan huruf kapital. Kemudian argumen kedua adalah alamat server dan nomer port yang akan digunakan. Nomer port bebas, asalkan tidak bentrok dengan nomer port service lain.

Penggunaan fungsi SAPI pada PHP

Gambar di atas menunjukkan, kalau servernya siap menerima request dari alamat http://localhost:8000 dengan root dokumenya /home/petanikode.

Penggunaan fungsi SAPI pada PHP

Kita akan mendapatkan error 404, karena tidak ada file index.php di root dokumen server tersebut. Berikut ini log yang akan tampil di terminal.

[email protected] ~ $ php -S localhost:8000
PHP 7.0.8-0ubuntu0.16.04.3 Development Server started at Sun Oct  9 14:43:04 2016
Listening on http://localhost:8000
Document root is /home/petanikode
Press Ctrl-C to quit.
[Sun Oct  9 14:49:15 2016] 127.0.0.1:40244 [404]: / - No such file or directory
[Sun Oct  9 14:49:15 2016] 127.0.0.1:40246 [404]: /favicon.ico - No such file or directory
[Sun Oct  9 14:49:15 2016] 127.0.0.1:40248 [404]: /favicon.ico - No such file or directory

Untuk menghentikan server, tekan tombol Ctrl+c.

Root Document

Root Document merupakan lokasi dari dokumen proyek atau web.

Misalkan, pada contoh percobaan di atas, root dokumennya berada di /home/petanikode/.

Karena saya menjalankan perintah tersebut di home direktori. Mari kita coba menggunakan root dokumen yang lain.

  1. Buat sebuah direktori baru, kemudian masuk ke direktori tersebut

  2. Buat sebuah file baru bernama index.php

  3. Isi file tersebut dengan kode berikut ini

    php
    echo "Hallo, ini webku. Selamat datang ya";
    ?>
    

  4. Keumudian jalankan servernya

Berikut ini hasil output yang akan kita dapatkan.

Penggunaan fungsi SAPI pada PHP

Lokasi dokumen root juga dapat kita tentukan secara spesifik dengan arugmen -t. Misalnya,

php -S localhost:8000 -t /var/www/html/proyek-web/

Menggunakan Skrip Router

Router fungsinya untuk mengatur arah dan tujuan. Misalkan, sebuah permintaan (request) dengan URI /profil maka arahkan atau buka halaman profil.php.

  1. Buatlah file baru pada direktori sebelumnya dengan nama router.php, kemudian isi dengan kode berukut.

    php // router.php
    switch ($_SERVER["REQUEST_URI"]){
    
    case "/profil":
      include("profil.php");
      break;
    case "/home":
      echo "Ini halaman Home";
      break;
    default:
      echo "404: Halaman tidak ditemukan";
    
    }
    ?>
    

  2. Kemudian buatlah file bernama profil.php dengan isi sebagai berikut.

    php
    echo "Ini halaman profil";
    ?>
    

  3. Jalankan servernya

    php -S localhost:8000 router.php

Hasil output yang akan kita dapatkan adalah seperti gambar ini.

Penggunaan fungsi SAPI pada PHP

Nah, itulah cara menggunakan web server bawaan PHP. Lebih lengkapnya, bisa dipelajari di dokumentasi PHP. Sekian tulisan kali ini, mudah-mudahan bermanfaat.

Referensi: php.net