Dalam tutorial ini, kami akan menunjukkan kepada Anda cara menginstal LEMP di CentOS 7. Bagi Anda yang belum tahu, A LEMP software stack adalah sekelompok perangkat lunak open-source yang biasanya dipasang bersama untuk memungkinkan server menghosting situs web dan aplikasi web dinamis. Istilah ini sebenarnya adalah akronim yang mewakili sistem operasi Linux, dengan server web Nginx (yang menggantikan komponen Apache dari tumpukan LAMP). Data situs disimpan di database MySQL (menggunakan MariaDB), dan konten dinamis diproses oleh PHP.
Artikel ini mengasumsikan Anda memiliki setidaknya pengetahuan dasar tentang Linux, tahu cara menggunakan shell, dan yang terpenting, Anda meng-host situs Anda di VPS Anda sendiri. Instalasinya cukup sederhana. Saya akan menunjukkan kepada Anda langkah demi langkah instalasi LEMP (Linux, Nginx, MariaDB, dan PHP) di server CentOS 7.
Instal LEMP di CentOS 7
Langkah 1. Pertama-tama, pastikan semua paket sudah diperbarui.
yum -y update
Langkah 2. Memasang dan Mengonfigurasi NGINX di CentOS 7.
Nginx belum tersedia di repositori resmi CentOS 7, jadi kita harus menambahkan/menginstal repositori Nginx yum dengan mengeluarkan perintah di bawah ini:
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yum install nginx
Mulai Nginx dan tambahkan untuk secara otomatis memulai sistem Anda saat memulai menggunakan:
systemctl restart nginx systemctl enable nginx
Anda dapat memverifikasi bahwa Nginx benar-benar berjalan dengan membuka web browser favorit Anda dan memasukkan URL http://your-server's-address, jika sudah terpasang, maka Anda akan melihat ini:

Langkah 3. Konfigurasikan server web Nginx.
Misalnya Anda memiliki domain mydomain.com dan Anda ingin menggunakannya untuk meng-host aplikasi web berbasis PHP di /var/www/mydomain.com
seperti WordPress, Joomla. Untuk mengatur permintaan layanan Nginx untuk mydomain.com, dan melayani skrip PHP di /var/www/mydomain.com, Anda harus membuat blok server di /etc/nginx/conf.d/mydomain.com.conf
yang akan terlihat seperti ini:
### nano /etc/nginx/conf.d/mydomain.com.conf server { server_name mydomain.com; listen 80; root /var/www/mydomain.com; access_log /var/log/nginx/mydomain.com-access.log; error_log /var/log/nginx/mydomain.com-error.log; index index.php; location / { try_files $uri $uri/ /index.php?$args; } location ~* \.(jpg|jpeg|gif|css|png|js|ico|html)$ { access_log off; expires max; } location ~ /\.ht { deny all; } location ~ \.php { try_files $uri = 404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Uji dan mulai ulang Nginx menggunakan:
nginx -t systemctl restart nginx
Langkah 4. Menginstal dan Mengonfigurasi PHP di CentOS 7.
Instal PHP di CentOS 7 dengan perintah berikut untuk memulai instalasi:
yum install php-fpm php-mysql php-mcrypt
Anda mungkin ingin menginstal beberapa ekstensi PHP lain yang diperlukan oleh aplikasi Anda. Berikut adalah daftar modul PHP yang tersedia:
php-bcmath : A module for PHP applications for using the bcmath library php-cli : Command-line interface for PHP php-common : Common files for PHP php-dba : A database abstraction layer module for PHP applications php-devel : Files needed for building PHP extensions php-embedded : PHP library for embedding in applications php-enchant : Enchant spelling extension for PHP applications php-fpm : PHP FastCGI Process Manager php-gd : A module for PHP applications for using the gd graphics library php-intl : Internationalization extension for PHP applications php-ldap : A module for PHP applications that use LDAP php-mbstring : A module for PHP applications which need multi-byte string handling php-mysql : A module for PHP applications that use MySQL databases php-mysqlnd : A module for PHP applications that use MySQL databases php-odbc : A module for PHP applications that use ODBC databases php-pdo : A database access abstraction module for PHP applications php-pear.noarch : PHP Extension and Application Repository framework php-pecl-memcache : Extension to work with the Memcached caching daemon php-pgsql : A PostgreSQL database module for PHP php-process : Modules for PHP script using system process interfaces php-pspell : A module for PHP applications for using pspell interfaces php-recode : A module for PHP applications for using the recode library php-snmp : A module for PHP applications that query SNMP-managed devices php-soap : A module for PHP applications that use the SOAP protocol php-xml : A module for PHP applications which use XML php-xmlrpc : A module for PHP applications which use the XML-RPC protocol
Mulai ulang Nginx agar semua perubahan diterapkan:
systemctl restart nginx systemctl restart php-fpm systemctl enable php-fpm
Untuk menguji PHP, buat file pengujian bernama info.php dengan konten di bawah ini. Simpan file, lalu telusuri untuk melihat apakah PHP berfungsi:
nano /var/www/html/info.php
<?php phpinfo(); ?>
Langkah 5. Menginstal dan Mengonfigurasi MariaDB di CentOS 7.
Instal MariaDB dengan perintah berikut untuk memulai instalasi:
yum install mariadb mariadb-server mysql
Setelah itu tambahkan ke startup sistem Anda dan mulai server MariaDB menggunakan perintah berikut:
systemctl restart mariadb systemctl status mariadb systemctl enable mariadb
Secara default, MariaDB tidak dikeraskan. Anda dapat mengamankan MariaDB menggunakan skrip mysql_secure_installation. Anda harus membaca dan di bawah setiap langkah dengan cermat yang akan menetapkan kata sandi root, hapus anonim pengguna, larang login root jarak jauh, dan hapus database pengujian dan akses untuk mengamankan MySQL:
mysql_secure_installation
Untuk masuk ke MariaDB, gunakan perintah berikut (perhatikan bahwa itu adalah perintah yang sama yang akan Anda gunakan untuk masuk ke database MySQL):
mysql -u root -p
Langkah 6. Konfigurasi IPTables atau firewall.
firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload
Selamat! Anda telah berhasil menginstal LEMP stack. Terima kasih telah menggunakan tutorial ini untuk menginstal LEMP (Linux Nginx, MariaDB, dan PHP) di sistem CentOS 7. Untuk bantuan tambahan atau informasi yang berguna, kami merekomendasikan Anda untuk memeriksa situs web resmi Nginx, MariaDB, dan PHP.