Cài đặt Lamp Webserver trên Amazon Linux

Xin chào, hôm nay mình xin hướng dẫn các bạn cài đặt webserver cụ thể đây là Lamp trên Amazon Linux.

 

Cài đặt các Package

1. Đăng nhập vào EC2 Instance. Cách đăng nhập thì các bạn xem bài trước nhá.

2. Đầu tiên chúng ta nên cập nhật ec2, để nó nạp các gói cần thiết nhất bằng lệnh sau.

[ec2-user ~]$ sudo yum update -y

NOTE : Tuỳ chọn  -y sẽ tải và cập nhật mà không hỏi lại.

3. Cài đặt Apache webserver , MySQL và PHP

[ec2-user ~]$ sudo yum install -y httpd24 php56 mysql55-server php56-mysqlnd

Với cú pháp trên mình chỉ cài các gói  httpd24 php56 mysql55-server php56-mysqlnd, ai muốn cài thêm các gói khác thì thêm vào phía sau nữa.

4. Start Apache web server: tiến hành chạy httpd lên, trạng thái trả về OK là thành công

[ec2-user ~]$ sudo service httpd start
Starting httpd:                                            [  OK  ]

5. Sử dụng câu lệnh chkconfig để apache webserver tự start mỗi khi server khởi động

[ec2-user ~]$ sudo chkconfig httpd on

Note : kiểm tra lại bằng lệnh sau:

[ec2-user ~]$ chkconfig --list httpd
httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off

Số 2 , 3 , 4 , 5 on là đã chạy ok .

6. Add thêm giao thức HTTP  Inbound rule cho security group để Instance có thể allow http traffic

Cài đặt Lamp Webserver trên Amazon Linux

7 . Test webserver . Ta mở trình duyệt sau đó điền địa chỉ DNS public hoặc IP public của Instance . Ta thể tìm thấy chúng trong Amazon EC2 console phần Description:

dnsamazon

Nếu hiện test page như hình dưới là server đã chạy thành công.

index amazon

Note : Test page này xuất hiện vì trong /var/www/html không có file index. Khi bạn tạo file trong /var/www/html  thì nội dung sẽ xuất hiện ngay.

Với thư mục  /var/www/html có quyền sở hữu mặc định là root, nó là thư mục để chúng ta chạy website, để thuận tiện về sau tôi khuyên các bạn nên đổi quyền lại và cho phép ec2-user có khả năng thao tác trên thư mục này.

Ở đây ta sẽ thực hiện tạo một group www vào server . Sau đó gán quyền cho group để các user trong group www có thể thực hiện các quyền.

Để gán permission

1 . Cách add www group vào instance .

[ec2-user ~]$ sudo groupadd www

2. Add user vào group ( ở đây user mặc định của amazon linux là ec2-user )

[ec2-user ~]$ sudo usermod -a -G www ec2-user

3. Exit khỏi server ec2.

[ec2-user ~]$ exit

4. SSH vào lại server, và kiểm tra xem groups www có hay chưa bằng cách

[ec2-user ~]$ groups
ec2-user wheel www

4. Tiến hành thay đổi chủ sở hữu của /var/www

[ec2-user ~]$ sudo chown -R root:www /var/www

5. Tiến hành phân quyền của /var/www và các thư mục con chứa trong nó .

[ec2-user ~]$ sudo chmod 2775 /var/www
[ec2-user ~]$ find /var/www -type d -exec sudo chmod 2775 {} \;
[ec2-user ~]$ find /var/www -type f -exec sudo chmod 0664 {} \;

Sau bước trên thì ec2-user và bất kỳ user nào nằm trong group www sẽ có quyền add , delete , edit files trong /var/www

Test LAMP webserver 

Để thực hiện test ta làm như sau

Tạo 1 file PHP với nội dung như sau:

[ec2-user ~]$ echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php

Câu lệnh trên là tạo file phpinfo.php có nội dung: echo “<?php phpinfo(); ?>” và lưu vào /var/www/html

2. Mở trình duyệt rồi nhập URL của DNS public và tên file php trên:

Ví dụ: http://ec2-54-156-19-18.ap#########amazon.com/phpinfo.php

Cài đặt Lamp Webserver trên Amazon Linux

Nội dung xuất hiện như hình trên là các bạn đã thành công với bài này. Chúng ta cũng nên xoá file trên đi, vì nó dễ làm lộ thông tin server chúng ta:

[ec2-user ~]$ rm /var/www/html/phpinfo.php

Chúc thành công.

[thongbao]

  1. Nếu có thắc mắc gì các bạn để lại comment bên dưới mình sẽ trả lời sớm nhất có thể.
  2. Cảm ơn các bạn đã đọc.

[/thongbao]

Cài đặt Lamp Webserver trên Amazon Linux