Dalam tutorial ini, kami akan memberi Anda petunjuk langkah demi langkah tentang cara menyiapkan blok server nginx di Ubuntu 16.04 dan CentOS 7. Blok server Nginx sering digunakan untuk menjalankan beberapa situs web pada satu alamat IP.
Perhatikan bahwa tutorial ini hanya untuk Nginx. Jika Anda menggunakan Apache, Anda harus menyiapkan host virtual
1. Instal Nginx di Ubuntu
Pastikan paket OS server Anda benar-benar mutakhir:
apt-get update apt-get upgrade
Hentikan dan hapus Apache, lalu instal nginx menggunakan perintah berikut:
service apache2 stop apt-get remove apache2 apt-get autoremove apt-get install nginx
Hapus file konfigurasi nginx default:
rm /etc/nginx/sites-enabled/default
Aktifkan layanan nginx untuk memulai saat boot dan memulainya:
systemctl enable nginx systemctl start nginx.service
2. Instal Nginx di CentOS
Pastikan semua paket OS terbaru dengan menjalankan perintah berikut:
yum clean all yum update
Hentikan dan hapus Apache jika diinstal dan dijalankan di server virtual Anda:
systemctl stop httpd systemctl disable httpd yum remove httpd
Instal nginx:
yum install nginx
Juga, Anda mungkin ingin menginstal PHP dan MariaDB, jadi jalankan perintah berikut:
yum install nginx mariadb mariadb-server php php-fpm php-cli php-curl php-gd php-mbstring php-mysql php-xml
Edit file konfigurasi /etc/php-fpm.d/www.conf dan ubah:
user = apache group = apache
ke:
user = www-data group = www-data
Jalankan perintah berikut:
chown www-data: -R /var/lib/php/session
Mulai layanan PHP-FPM, Nginx dan MariaDB dan aktifkan untuk memulai saat boot:
systemctl start php-fpm systemctl start nginx systemctl start mariadb
systemctl enable php-fpm systemctl enable nginx systemctl enable mariadb
3. Konfigurasi nginx dan atur blok server nginx
Mari konfigurasikan arahan inti di file konfigurasi nginx utama bernama 'nginx.conf'. Itu harus ditempatkan di direktori /etc/nginx/ di server Anda.
vi /etc/nginx/nginx.conf
user www-data; worker_processes 4; pid /var/run/nginx.pid;
pengguna – pengguna yang akan memiliki dan menjalankan server nginx.
proses_pekerja – secara umum, yang terbaik adalah mengatur konfigurasi nginx worker_processes ke jumlah CPU. Jika misalnya Anda menggunakan paket SSD 4 VPS kami, setel worker_processes ke 4.
Untuk memeriksa jumlah CPU di server Anda, Anda dapat menggunakan perintah berikut:
#cat /proc/cpuinfo | grep processor | wc -l 4
pid – lokasi di mana nginx akan menulis ID proses masternya, atau PID.
Jika Anda menggunakan CentOS, buat file konfigurasi Nginx baru untuk situs web Anda:
vi /etc/nginx/conf.d/domain1.com.conf
Tambahkan konten berikut:
server { server_name www.domain1.com domain1.com; listen 80; root /var/www/html/domain1.com; access_log /var/log/nginx/domain1.com-access.log; error_log /var/log/nginx/domain1.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 ~ \.php$ { try_files $uri = 404; fastcgi_split_path_info ^(.+\.php)(/.+)$; 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; } location ~ /\.ht { deny all; } }
Jika Anda perlu meng-host lebih dari satu situs web di server yang sama (menggunakan alamat IP yang sama), Anda dapat membuat blok server baru. Yang terbaik adalah membuat file konfigurasi baru untuk setiap situs web.
Misalnya, buat file konfigurasi nginx kedua bernama /etc/nginx/conf.d/domain2.com.conf dan tambahkan konten yang sama dengan /etc/nginx/conf.d/domain1.com.conf , tetapi pastikan untuk mengganti domain1.com dengan nama domain kedua termasuk root dokumen situs web Anda, lokasi file log, dll.:
server { server_name www.domain2.com domain2.com; listen 80; root /var/www/html/domain2.com; access_log /var/log/nginx/domain2.com-access.log; error_log /var/log/nginx/domain2.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 ~ \.php$ { try_files $uri = 404; fastcgi_split_path_info ^(.+\.php)(/.+)$; 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; } location ~ /\.ht { deny all; } }
Jika Anda menggunakan OS Ubuntu, buat file konfigurasi nginx ‘domain1.com.conf’ ke direktori /etc/nginx/sites-available.
vi /etc/nginx/sites-enabled/domain1.com.conf
(tambahkan konten yang sama dengan konten yang tercantum di atas, yaitu /etc/nginx/conf.d/domain1.com.conf pada server CentOS).
Kemudian, buat tautan simbolis dari file ini ke direktori yang mendukung situs:
ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
Ulangi prosedur yang sama dan buat file konfigurasi baru untuk semua situs web lain yang dihosting di server.
4. Uji konfigurasi Nginx
nginx -t
Jika tes berhasil, mulai ulang layanan Nginx:
systemctl restart nginx
Unggah file situs web Anda ke direktori /var/www/html/domain1.com , /var/www/html/domain2.com /var/www/html/domainN.com.
Pengguna server web (www-data) harus memiliki akses ke direktori /var/www/html/domain1.com , /var/www/html/domain2.com , /var/www/html/domainN.com . Ini dapat dengan mudah dilakukan dengan menjalankan perintah berikut:
chown -R www-data:www-data /var/www/html/
Tentu saja Anda tidak perlu Cara Mengatur Blok Server Nginx di Ubuntu dan CentOS, jika Anda menggunakan salah satu layanan Nginx VPS Hosting kami, dalam hal ini Anda dapat meminta admin Linux ahli kami untuk menyiapkan server nginx blok untukmu. Mereka tersedia 24×7 dan akan segera memenuhi permintaan Anda.
PS. Jika Anda menyukai posting ini, tentang cara mengatur Blok Server Nginx di Ubuntu dan CentOS, silakan bagikan dengan teman-teman Anda di jejaring sosial menggunakan tombol di sebelah kiri atau cukup tinggalkan balasan di bawah. Terima kasih.