Tutorial CentOS 8 : Cara Mudah Instalasi & Konfigurasi Nginx dan PHP
Web Server merupakan salah satu komponen penting dalam proses development dan production sebuah web. Salah satu web server yang populer pada saat ini adalah Nginx. Nginx merupakan web server yang sangat powerfull, cepat dan terkenal sangat handal dalam menghandle banyak request dalam waktu yang bersamaan serta sangat mudah dalam segi instalasi dan konfigurasi oleh karena itu web server nginx sangat populer. Berikut kita akan melakukan instalasi Nginx dan PHP pada sistem operasi CentOS 8. CentOS 8 merupakan versi terbaru dari sistem operasi CentOS yang menggunakan base sistem dari RHEL8. Langsung saja mari kita mulai melakukan instalasi.
# cat /etc/centos-release
CentOS 8
# CentOS Linux release 8.1.1911 (Core)
1. Upgrade dan Update Sistem
Langkah pertama adalah melakukan Update sistem dengan perintah yum upgrade && yum update
sebelumnya lakukanlah pengetesan koneksi internet dengan untility ping
.
# yum upgrade && yum update
2. Install Nginx
Menginstall nginx cukup mudah yaitu dengan mengetikan perintah maka proses instalasi akan berjalan.
# yum install nginx
Selanjutnya kita enable dulu service nginx agar setiap server dinyalakan ulang, service nginx akan selalu dijalankan otomatis. Kemudian sekarang kita jalankan service nginx.
# systemctl enable nginx.service
# systemctl start nginx.service
Pastikan service nginx telah berjalan (running).
# systemctl status nginx.service
● nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor Active: active (running) since Wed 2020-04-01 15:34:38 WIB; 59s ago Process: 3545 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 3543 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 3541 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, Main PID: 3546 (nginx) Tasks: 3 (limit: 5046) Memory: 5.2M CGroup: /system.slice/nginx.service ├─3546 nginx: master process /usr/sbin/nginx
Langkah selajutnya kita membuka akses firewall untuk service http agar nantinya dapat nantinya web server kita dapat diakses dari luar. Jangan lupa untuk melakukan reload firewall-cmd setelah kita melakukan penambahan service.
# firewall-cmd --add-service=http --permanent --zone=public
# firewall-cmd --reload
Selanjutnya kita tes dengan menggunakan web browser dengan mengakses http://localhost/tes.php
atau http://ip-address/tes.php
.
3. Instalasi PHP
Untuk Instalasi PHP cukuplah mudah. Pada sistem operasi CentOS ini sudah include dengan PHP versi 7.2. Jika instalasi selesai jangan lupa untuk meng-enable dan start service PHP Serta restart service Nginx.
# yum install php
# systemctl enable php-fpm.service
# systemctl start php-fpm.service
# systemctl restart nginx.service
Untuk melakukan pengujian terhadap web server kita apakah sudah bisa membaca dan memproses file PHP maka kita akan membuat file php sederhana. Direktori web default Nginx ada di /usr/share/nginx/html/
.
# cat > /usr/share/nginx/html/tes.php
Ketikan code PHP
ini lalu jika sudah tekan ctrl+d
.
<?php
phpinfo();
?>
Selanjutnya kita coba pada web browser dengan mengakses http://localhost/tes.php
atau http://ip-address/tes.php
.
Jika kalian ingin mengistall module PHP lain yang dibutuhkan cukup dengan perintah yum install php-(module)
contohnya bila saya memerlukan module PHP untuk terintegrasi dengan database MYSQL maka saya dapat melakukan instalasi nya dengan perintah yum install php-mysql
Berikut list module PHP yang tersedia dan siap untuk di Install.
# yum search php-
Last metadata expiration check: 0:05:16 ago on Wed 01 Apr 2020 06:42:06 PM WIB. ====================================== Name Matched: php- ====================================== php-gd.x86_64 : A module for PHP applications for using the gd graphics library php-cli.x86_64 : Command-line interface for PHP php-fpm.x86_64 : PHP FastCGI Process Manager php-cli.x86_64 : Command-line interface for PHP php-dba.x86_64 : A database abstraction layer module for PHP applications php-dbg.x86_64 : The interactive PHP debugger php-fpm.x86_64 : PHP FastCGI Process Manager php-gmp.x86_64 : A module for PHP applications for using the GNU MP library php-pdo.x86_64 : A database access abstraction module for PHP applications php-xml.x86_64 : A module for PHP applications which use XML php-intl.x86_64 : Internationalization extension for PHP applications php-json.x86_64 : JavaScript Object Notation extension for PHP php-ldap.x86_64 : A module for PHP applications that use LDAP php-odbc.x86_64 : A module for PHP applications that use ODBC databases php-pear.noarch : PHP Extension and Application Repository framework php-snmp.x86_64 : A module for PHP applications that query SNMP-managed devices php-soap.x86_64 : A module for PHP applications that use the SOAP protocol php-devel.x86_64 : Files needed for building PHP extensions php-pgsql.x86_64 : A PostgreSQL database module for PHP php-common.x86_64 : Common files for PHP php-bcmath.x86_64 : A module for PHP applications for using the bcmath library php-common.x86_64 : Common files for PHP php-recode.x86_64 : A module for PHP applications for using the recode library php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol php-enchant.x86_64 : Enchant spelling extension for PHP applications php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases php-opcache.x86_64 : The Zend OPcache php-process.x86_64 : Modules for PHP script using system process interfaces php-embedded.x86_64 : PHP library for embedding in applications php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling php-pecl-zip.x86_64 : A ZIP archive management extension php-pecl-apcu.x86_64 : APC User Cache php-pecl-apcu-devel.x86_64 : APCu developer files (header)
Sampai disini kita sudah dapat menginstall NGINX web server beserta PHP selanjutnya kalian sudah dapat menginstall cms atau mulai mendeploy web atau melangkapi server ini dengan database server. Semoga postingan ini bermanfaat dan SELAMAT MENCOBA ^_^.
Zona Biner