10 Perintah Nginx yang Paling Banyak Digunakan Yang Harus Diketahui Setiap Pengguna Linux


Nginx (diucapkan Engine x) adalah HTTP gratis, sumber terbuka, berkinerja tinggi, dapat diskalakan, andal, berfitur lengkap, dan populer HTTP serta server proxy balik, server proxy email, dan TCP/ generik Server proksi UDP.

Nginx terkenal dengan konfigurasinya yang sederhana, dan konsumsi sumber daya yang rendah karena kinerjanya yang tinggi, Nginx digunakan untuk memberi daya pada beberapa situs dengan lalu lintas tinggi di web, seperti GitHub , SoundCloud, Dropbox, Netflix, WordPress dan banyak lainnya.

Baca Juga: 3 Peretasan Berguna yang Harus Diketahui Setiap Pengguna Linux

Dalam panduan ini, kami akan menjelaskan beberapa perintah manajemen layanan Nginx yang paling umum digunakan, yang harus Anda miliki sebagai pengembang atau administrator sistem. Kami akan menampilkan perintah untuk Systemd dan SysVinit.

Semua daftar perintah populer Nginx berikut ini harus dijalankan sebagai pengguna root atau sudo dan harus berfungsi pada distribusi Linux modern apa pun seperti CentOS , RHEL, Debian, Ubuntu dan Fedora.

Instal Server Nginx

Untuk menginstal server web Nginx, gunakan manajer paket distribusi default Anda seperti yang ditunjukkan.


sudo yum install epel-release && yum install nginx   [On CentOS/RHEL]
sudo dnf install nginx                               [On Fedora]
sudo apt install nginx                               [On Debian/Ubuntu]

Periksa Versi Nginx

Untuk memeriksa versi server web Nginx yang terinstal di sistem Linux Anda, jalankan perintah berikut.

nginx -v

nginx version: nginx/1.12.2

Perintah di atas hanya menampilkan nomor versi. Jika Anda ingin melihat versi dan mengonfigurasi opsi, gunakan tanda -V seperti yang ditunjukkan.

nginx -V
nginx version: nginx/1.12.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-google_perftools_module --with-debug --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic' --with-ld-opt='-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E'

Periksa Sintaks Konfigurasi Nginx

Sebelum Anda benar-benar memulai layanan Nginx, Anda dapat memeriksa apakah sintaks konfigurasinya sudah benar. Hal ini sangat berguna jika Anda telah membuat perubahan atau menambahkan konfigurasi baru ke struktur konfigurasi yang ada.

Untuk menguji konfigurasi Nginx, jalankan perintah berikut.

sudo nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Anda dapat menguji konfigurasi Nginx, membuangnya dan keluar menggunakan flag -T seperti yang ditunjukkan.

sudo nginx -T
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
configuration file /etc/nginx/nginx.conf:
For more information on configuration, see:
  * Official English Documentation: http://nginx.org/en/docs/
  * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;

    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

....

Mulai Layanan Nginx

Untuk memulai layanan Nginx, jalankan perintah berikut. Perhatikan bahwa proses ini mungkin gagal jika sintaks konfigurasi tidak OK.

sudo systemctl start nginx #systemd
OR
sudo service nginx start   #sysvinit

Aktifkan Layanan Nginx

Perintah sebelumnya hanya memulai layanan untuk sementara, untuk mengaktifkannya mulai otomatis saat boot, jalankan perintah berikut.

sudo systemctl enable nginx #systemd
OR
sudo service nginx enable   #sysv init

Mulai ulang Layanan Nginx

Untuk memulai ulang layanan Nginx, tindakan yang akan menghentikan dan kemudian memulai layanan.

sudo systemctl restart nginx #systemd
OR
sudo service nginx restart   #sysv init

Lihat Status Layanan Nginx

Anda dapat memeriksa status layanan Nginx sebagai berikut. Perintah ini menunjukkan informasi status waktu berjalan tentang layanan.

sudo systemctl status nginx #systemd
OR
sudo service nginx status   #sysvinit
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
[root@tecmint ~]# systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2019-03-05 05:27:15 EST; 2min 59s ago
 Main PID: 31515 (nginx)
   CGroup: /system.slice/nginx.service
           ├─31515 nginx: master process /usr/sbin/nginx
           └─31516 nginx: worker process

Mar 05 05:27:15 linux-console.net systemd[1]: Starting The nginx HTTP and reverse proxy server...
Mar 05 05:27:15 linux-console.net nginx[31509]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Mar 05 05:27:15 linux-console.net nginx[31509]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Mar 05 05:27:15 linux-console.net systemd[1]: Failed to read PID from file /run/nginx.pid: Invalid argument
Mar 05 05:27:15 linux-console.net systemd[1]: Started The nginx HTTP and reverse proxy server.

Muat ulang Layanan Nginx

Untuk memberitahu Nginx agar memuat ulang konfigurasinya, gunakan perintah berikut.

sudo systemctl reload nginx #systemd
OR
sudo service nginx reload   #sysvinit

Hentikan Layanan Nginx

Jika Anda ingin menghentikan layanan Nginx karena satu dan lain hal, gunakan perintah berikut.

sudo systemctl stop nginx #systemd
OR
sudo service nginx stop   #sysvinit

Tampilkan Bantuan Perintah Nginx

Untuk mendapatkan panduan referensi mudah tentang semua perintah dan opsi Nginx, gunakan perintah berikut.

systemctl -h nginx
systemctl [OPTIONS...] {COMMAND} ...

Query or send control commands to the systemd manager.

  -h --help           Show this help
     --version        Show package version
     --system         Connect to system manager
  -H --host=[USER@]HOST
                      Operate on remote host
  -M --machine=CONTAINER
                      Operate on local container
  -t --type=TYPE      List units of a particular type
     --state=STATE    List units with particular LOAD or SUB or ACTIVE state
  -p --property=NAME  Show only properties by this name
  -a --all            Show all loaded units/properties, including dead/empty
                      ones. To list all units installed on the system, use
                      the 'list-unit-files' command instead.
  -l --full           Don't ellipsize unit names on output
  -r --recursive      Show unit list of host and local containers
     --reverse        Show reverse dependencies with 'list-dependencies'
     --job-mode=MODE  Specify how to deal with already queued jobs, when
                      queueing a new job
     --show-types     When showing sockets, explicitly show their type
  -i --ignore-inhibitors
...

Anda mungkin juga ingin membaca artikel terkait Nginx berikut ini.

  1. Panduan Utama untuk Mengamankan, Memperkuat, dan Meningkatkan Kinerja Server Web Nginx
  2. Amplify – Pemantauan NGINX Menjadi Mudah
  3. ngxtop – Pantau File Log Nginx secara Real Time di Linux
  4. Cara Install Nginx dengan Virtual Host dan Sertifikat SSL
  5. Cara Menyembunyikan Versi Server Nginx di Linux

Itu saja untuk saat ini! Dalam panduan ini, kami telah menjelaskan beberapa perintah manajemen layanan Nginx yang paling umum digunakan dan harus Anda ketahui, termasuk memulai, mengaktifkan, memulai ulang, dan menghentikan Nginx. Jika Anda memiliki tambahan atau pertanyaan untuk ditanyakan, gunakan formulir umpan balik di bawah.