Các bước chính quá trình cài đặt từ souce
+ Download source chương trình
+ Giải nén và chuyển vào trong folder
+ Tạo file configure
+ Make
+ Make install
Biên dịch Cài đặt Apache 2.4.53
+ Link tham khảo quá trình cài đặt
https://httpd.apache.org/docs/2.4/
+ Cài đặt các thư viện cần thiết
[root@thanhdd ~]# dnf install gcc
[root@thanhdd ~]# dnf install openssl-devel
[root@thanhdd ~]# dnf install pcre-devel
[root@thanhdd ~]# dnf install expat-devel
+ Download apache server 2.4.53
[root@thanhdd ~]# wget https://dlcdn.apache.org/httpd/httpd-2.4.53.tar.gz
[root@thanhdd ~]# tar xf httpd-2.4.53.tar.gz
[root@thanhdd ~]# cd httpd-2.4.53
[root@thanhdd httpd-2.4.53]# ./configure --help
[root@thanhdd httpd-2.4.53]# ./configure --enable-ssl --enable-so --enable-http2
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
Configuring Apache Portable Runtime library ...
checking for APR... no
configure: error: APR not found. Please read the documentation.
=> Hiện đang báo thiếu Apache Portable Runtime, cần down về file source cài đặt
+ Download apr-1.7.0.tar.gz và apr-util-1.6.1.tar.gz va su dung tar extract
[root@thanhdd ~]# wget https://dlcdn.apache.org/apr/apr-1.7.0.tar.gz
[root@thanhdd ~]# wget https://dlcdn.apache.org/apr/apr-util-1.6.1.tar.gz
[root@thanhdd ~]# tar xf apr-1.7.0.tar.gz
[root@thanhdd ~]# tar xf apr-util-1.6.1.tar.gz
+ Sau đó di chuyển folder “apr-1.7.0” và “apr-util-1.6.1” vào trong “/root/httpd-2.4.41/srclib” và lần lượt đổi tên thành “apr” và “apr-util”
[root@thanhdd ~]# mv apr-1.7.0 /root/httpd-2.4.53/srclib/apr
[root@thanhdd ~]# mv apr-util-1.6.1 /root/httpd-2.4.53/srclib/apr-util
– Ta reconfigure lại apache 2.4.53 và install lại
[root@thanhdd httpd-2.4.53]# ./configure --enable-ssl --enable-so --enable-proxy --with-included-apr
# nếu vẫn thiếu paket cần clean lại configure sau đó install lại
[root@thanhdd httpd-2.4.53]# ./configure clean
[root@thanhdd httpd-2.4.53]# make
[root@thanhdd httpd-2.4.53]# make install
– Thử nghiệm khởi động dịch vụ
# index lại file chương trình mới cài dc tạo ra
[root@srv ~]# yum -y install mlocate
[root@srv ~]# updatedb
# Tìm file cấu hình
[root@server apache2]# locate httpd.conf
# mở file cấu hình
[root@server conf]# vi /usr/local/apache2/conf/httpd.conf
#dong 186
ServerAdmin admin@thanhdd.lab
#dong 195
ServerName thanhdd.lab:80
# Sửa file host
[root@srv ~]# vi /etc/hosts
192.168.126.204 thanhdd.lab
# Định vị file khởi động dịch vụ
[root@srv bin]# locate apache
/usr/local/apache2/bin/apachectl
=> file này liên quan đến tắt mở dịch vụ apache
[root@server bin]# /usr/local/apache2/bin/apachectl
[root@server bin]# /usr/local/apache2/bin/apachectl -k [ start | stop ]
# start apache lên sau đó kiểm tra lại xem port 80 mở chưa
[root@thanhdd ~]# netstat -ltunp
Tạo Scripts systemctl để quản lý ứng dụng
+ Sử dụng systemd để kiểm tra các dịch vụ ở trong máy
[root@thanhdd ~]# systemctl --type=service
+ Tạo scripts để khởi động dịch vụ apache
[root@thanhdd ~]# vi /etc/systemd/system/httpd.service
[Unit] Description=The Apache HTTP Server After=network.target [Service] Type=forking ExecStart=/usr/local/apache2/bin/apachectl -k start ExecReload=/usr/local/apache2/bin/apachectl -k reload ExecStop=/usr/local/apache2/bin/apachectl -k stop ExecStatus=/usr/local/apache2/bin/apachectl -k status PIDFile=/usr/local/apache2/logs/httpd.pid PrivateTmp=true [Install] WantedBy=multi-user.target
# Phân quyền cho file scrip này
chmod 644 /etc/systemd/system/httpd.service
+ Thử khởi động dịch vụ Nginx
[root@thanhdd ~]# systemctl start httpd
# Khởi động cùng hệ thống
[root@thanhdd ~]# systemctl enable httpd
# Trạng thái
[root@thanhdd ~]# systemctl status httpd
# dừng
[root@thanhdd ~]# systemctl stop httpd
# Kiểm tra port
[root@thanhdd ~]# netstat -ltunp