Tìm kiếm trang web

Các lệnh hữu ích để quản lý máy chủ web Apache trong Linux


Trong hướng dẫn này, chúng tôi sẽ mô tả một số lệnh quản lý dịch vụ Apache (HTTPD) được sử dụng phổ biến nhất mà bạn nên biết với tư cách là nhà phát triển hoặc quản trị viên hệ thống và bạn nên giữ các lệnh này trong tầm tay. Chúng tôi sẽ hiển thị các lệnh cho cả SystemdSysVinit.

Đọc thêm: 10 lệnh Nginx được sử dụng nhiều nhất mà mọi người dùng Linux đều phải biết

Đảm bảo rằng các lệnh sau phải được thực thi với tư cách là người dùng root hoặc sudo và sẽ hoạt động trên mọi bản phân phối Linux như CentOS, RHEL, Fedora DebianUbuntu.

Cài đặt máy chủ Apache

Để cài đặt máy chủ web Apache, hãy sử dụng trình quản lý gói phân phối mặc định của bạn như được hiển thị.

sudo apt install apache2	    [On Debian/Ubuntu]
sudo yum install httpd	    [On RHEL/CentOS]
sudo dnf install httpd	    [On Fedora 22+]
sudo zypper install apache2	    [On openSUSE]

Kiểm tra phiên bản Apache

Để kiểm tra phiên bản đã cài đặt của máy chủ web Apache trên hệ thống Linux của bạn, hãy chạy lệnh sau.

sudo httpd -v
OR
sudo apache2 -v
Đầu ra mẫu
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09

Nếu bạn muốn hiển thị số phiên bản Apache và cài đặt biên dịch, hãy sử dụng cờ -V như được hiển thị.

sudo httpd -V
OR
sudo apache2 -V
Đầu ra mẫu
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09
Server's Module Magic Number: 20120211:24
Server loaded:  APR 1.4.8, APR-UTIL 1.5.2
Compiled using: APR 1.4.8, APR-UTIL 1.5.2
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/etc/httpd"
 -D SUEXEC_BIN="/usr/sbin/suexec"
 -D DEFAULT_PIDLOG="/run/httpd/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"

Kiểm tra lỗi cú pháp cấu hình Apache

Để kiểm tra các tệp cấu hình Apache của bạn xem có bất kỳ lỗi cú pháp nào không, hãy chạy lệnh sau. Lệnh này sẽ kiểm tra tính hợp lệ của các tệp cấu hình trước khi khởi động lại dịch vụ.

sudo httpd -t
OR
sudo apache2ctl -t
Đầu ra mẫu
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using linux-console.net. 
Set the 'ServerName' directive globally to suppress this message
Syntax OK

Bắt đầu dịch vụ Apache

Để khởi động dịch vụ Apache, hãy chạy lệnh sau.

------------ On CentOS/RHEL ------------ 
sudo systemctl start httpd     [On Systemd]
sudo service httpd start 	 [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl start apache2   [On Systemd]
sudo service apache2 start     [On SysVInit]

Kích hoạt dịch vụ Apache

Lệnh trước chỉ khởi động dịch vụ Apache trong thời gian chờ đợi, để cho phép dịch vụ này tự động khởi động khi khởi động hệ thống, hãy chạy lệnh sau.

------------ On CentOS/RHEL ------------ 
sudo systemctl enable httpd     [On Systemd]
sudo chkconfig httpd on 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl enable apache2   [On Systemd]
sudo chkconfig apache2 on       [On SysVInit]

Khởi động lại dịch vụ Apache

Để khởi động lại Apache (dừng rồi khởi động dịch vụ), hãy chạy lệnh sau.

------------ On CentOS/RHEL ------------ 
sudo systemctl restart httpd     [On Systemd]
sudo service httpd restart 	   [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl restart apache2   [On Systemd]
sudo service apache2 restart     [On SysVInit]

Xem trạng thái dịch vụ Apache

Để kiểm tra thông tin trạng thái thời gian chạy dịch vụ Apache, hãy chạy lệnh sau.

------------ On CentOS/RHEL ------------ 
sudo systemctl status httpd     [On Systemd]
sudo service httpd status 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl status apache2   [On Systemd]
sudo service apache2 status     [On SysVInit]

Tải lại dịch vụ Apache

Nếu bạn đã thực hiện bất kỳ thay đổi nào đối với cấu hình máy chủ Apache, bạn có thể hướng dẫn dịch vụ tải lại cấu hình của nó bằng cách chạy lệnh sau.

------------ On CentOS/RHEL ------------ 
sudo systemctl reload httpd     [On Systemd]
sudo service httpd reload 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl reload apache2   [On Systemd]
sudo service apache2 reload     [On SysVInit]

Dừng dịch vụ Apache

Để dừng dịch vụ Apache, hãy sử dụng lệnh sau.

------------ On CentOS/RHEL ------------ 
sudo systemctl stop httpd       [On Systemd]
sudo service httpd stop 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl stop apache2     [On Systemd]
sudo service apache2 stop     [On SysVInit]

Hiển thị trợ giúp lệnh Apache

Cuối cùng nhưng không kém phần quan trọng, bạn có thể nhận trợ giúp về các lệnh dịch vụ Apache trong systemd bằng cách chạy lệnh sau.

sudo httpd -h
OR
sudo apache2 -h		
OR
systemctl -h apache2	
Đầu ra mẫu
Usage: httpd [-D name] [-d directory] [-f file]
             [-C "directive"] [-c "directive"]
             [-k start|restart|graceful|graceful-stop|stop]
             [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S] [-X]
Options:
  -D name            : define a name for use in  directives
  -d directory       : specify an alternate initial ServerRoot
  -f file            : specify an alternate ServerConfigFile
  -C "directive"     : process directive before reading config files
  -c "directive"     : process directive after reading config files
  -e level           : show startup errors of level (see LogLevel)
  -E file            : log startup errors to file
  -v                 : show version number
  -V                 : show compile settings
  -h                 : list available command line options (this page)
  -l                 : list compiled in modules
  -L                 : list available configuration directives
  -t -D DUMP_VHOSTS  : show parsed vhost settings
  -t -D DUMP_RUN_CFG : show parsed run settings
  -S                 : a synonym for -t -D DUMP_VHOSTS -D DUMP_RUN_CFG
  -t -D DUMP_MODULES : show all loaded modules 
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files
  -T                 : start without DocumentRoot(s) check
  -X                 : debug mode (only one worker, do not detach)

Bạn có thể tìm thêm thông tin về systemctl bằng cách tham khảo: Cách quản lý các thiết bị và dịch vụ 'Systemd' bằng cách sử dụng 'Systemctl' trong Linux.

Bạn cũng có thể muốn đọc các bài viết liên quan đến Apache sau đây.

  1. 5 mẹo để tăng hiệu suất của máy chủ web Apache của bạn
  2. Cách giám sát thống kê trang và tải máy chủ web Apache
  3. Cách quản trị máy chủ web Apache bằng công cụ “Apache GUI”
  4. Cách thay đổi cổng HTTP Apache trong Linux
  5. 13 mẹo tăng cường và bảo mật máy chủ web Apache
  6. Bảo vệ Apache chống lại các cuộc tấn công Brute Force hoặc DDoS bằng cách sử dụng các mô-đun Mod_Security và Mod_evasive

Đó là tất cả cho bây giờ! Trong bài viết này, chúng tôi đã giải thích các lệnh quản lý dịch vụ Apache/HTTPD được sử dụng phổ biến nhất mà bạn nên biết, bao gồm khởi động, bật, khởi động lại và dừng Apache. Bạn luôn có thể liên hệ với chúng tôi thông qua mẫu phản hồi bên dưới nếu có bất kỳ câu hỏi hoặc nhận xét nào.