Cách cài đặt Linux, Apache, MySQL, PHP (LAMP) trên Debian 8
Phần mềm “LAMP”, bao gồm hệ điều hành L inux, web server A pache, database M ySQL và ngôn ngữ kịch bản P HP, là nền tảng tuyệt vời để phát triển web hoặc ứng dụng. Được cài đặt cùng nhau, ngăn xếp phần mềm này cho phép server của bạn lưu trữ các trang web và ứng dụng web động.Trong hướng dẫn này, ta sẽ cài đặt LAMP trên server Debian 8.
Yêu cầu
Trước khi ta bắt đầu, bạn cần cài đặt một server Debian 8 với account user kích hoạt
sudo
không phải root. Bạn có thể thực hiện việc này theo hướng dẫn cài đặt server ban đầu của ta cho Debian 8 .Bạn cũng nên tạo một firewall cơ bản, bạn có thể thực hiện theo hướng dẫn cài đặt Ubuntu và Debian UFW .
Bước 1 - Cập nhật hệ thống
Trước khi bạn cài đặt bất kỳ phần mềm nào, điều quan trọng là phải đảm bảo hệ thống của bạn được cập nhật. Để cập nhật danh sách gói của bạn, hãy nhập:
- sudo apt-get update
Điều này cho hệ điều hành của bạn so sánh các gói phần mềm hiện được cài đặt trên server của bạn với bất kỳ version mới nào có thể đã được cập nhật gần đây trong repository lưu trữ trực tuyến Debian, nơi các gói phần mềm cơ sở được lưu trữ.
Lưu ý: Nếu bạn đang chạy server phát triển hoặc server sử dụng cao quan trọng, hãy thận trọng khi cài đặt các bản cập nhật mà không xem kỹ từng gói để xác định xem nó có thực sự cần thiết cho hệ thống của bạn hay không. Trong ví dụ của ta ở đây, tất cả các gói chỉ được cài đặt cho các mục đích của hướng dẫn này.
Khi bạn đã xác định rằng các thành phần phần mềm cập nhật này phù hợp với nhu cầu của bạn, hãy tiếp tục và cập nhật server của bạn. Bạn có thể thực hiện việc này bằng lệnh lệnh sau:
- sudo apt-get dist-upgrade
Quá trình này có thể mất một lúc, tùy thuộc vào version hiện tại của hệ điều hành bạn đã cài đặt, gói phần mềm và điều kiện mạng. Trên một server mới, sẽ mất vài giây.
Bây giờ server của bạn đã được vá đầy đủ, cập nhật và sẵn sàng để cài đặt LAMP. Vì server của bạn đã chạy hệ điều hành Linux Debian, bạn có thể chuyển sang cài đặt web server Apache để quản lý các kết nối mạng của bạn .
Bước 2 - Cài đặt Apache và Cập nhật Tường lửa
Bước tiếp theo trong cài đặt LAMP của ta là cài đặt web server Apache. Đây là một web server được ghi chép đầy đủ và được sử dụng rộng rãi sẽ cho phép server của bạn hiển thị nội dung web. Để cài đặt Apache, hãy nhập như sau:
- sudo apt-get install apache2 apache2-doc
Điều này cài đặt gói web server Apache cơ bản cũng như tài liệu đi kèm với nó. Quá trình này có thể mất vài giây khi Apache và các gói yêu cầu của nó được cài đặt. Sau khi hoàn tất, apt-get
sẽ thoát và quá trình cài đặt sẽ hoàn tất.
Tiếp theo, giả sử rằng bạn đã làm theo hướng dẫn cài đặt UFW bằng cách cài đặt và kích hoạt firewall , hãy đảm bảo firewall của bạn cho phép truy cập HTTP và HTTPS.
Khi được cài đặt trên Debian 8, UFW được tải với các cấu hình ứng dụng mà bạn có thể sử dụng để điều chỉnh cài đặt firewall của bạn . Xem danh sách đầy đủ các cấu hình ứng dụng bằng lệnh:
- sudo ufw app list
Các cấu hình WWW
được sử dụng để quản lý các cổng được sử dụng bởi web server :
OutputAvailable applications: . . . WWW WWW Cache WWW Full WWW Secure . . .
Nếu bạn kiểm tra profile WWW Full
, nó cho thấy rằng nó cho phép lưu lượng đến các cổng 80
và 443
:
- sudo ufw app info "WWW Full"
OutputProfile: WWW Full Title: Web Server (HTTP,HTTPS) Description: Web Server (HTTP,HTTPS) Ports: 80,443/tcp
Cho phép truy cập HTTP và HTTPS đến cho cấu hình này:
- sudo ufw allow in “WWW Full”
Bây giờ ta đã cho phép lưu lượng truy cập web qua firewall của bạn , hãy kiểm tra đảm bảo web server sẽ phản hồi các yêu cầu bằng một trang web mẫu. Đầu tiên, bạn cần địa chỉ IP của server của bạn . Bạn có thể xem địa chỉ IP của bạn trong phiên SSH hiện tại bằng cách chạy lệnh sau:
- sudo ifconfig eth0
Trên màn hình của bạn, bạn sẽ thấy một vài dòng kết quả, bao gồm cả địa chỉ IP của server của bạn. Bạn cần số bốn phần được hiển thị sau inet addr:
::
Outputinet addr:111.111.111.111
Lưu ý địa chỉ IP được liệt kê và nhập nó vào trình duyệt web yêu thích của bạn như sau:
-
http:// 111.111.111.111
Sau khi hoàn tất, bạn sẽ thấy trang web Apache 2 mặc định, tương tự như sau:
Đến đây bạn đã cài đặt thành công Apache trên server của bạn , bạn có thể tải nội dung trang web của bạn lên folder /var/www/html
. Nếu bạn muốn cài đặt nhiều trang web, vui lòng xem bài viết này về cách cài đặt server ảo Apache .
Để biết thêm hướng dẫn và thông tin bảo mật liên quan đến Apache, hãy xem thông tin Apache của Debian .
Với web server của bạn được cài đặt và đang chạy, bạn đã sẵn sàng tạo một nơi để trang web của bạn lưu trữ dữ liệu, điều này bạn có thể làm với MySQL.
Bước 3 - Cài đặt và bảo mật MySQL
Thành phần tiếp theo của server LAMP là MySQL. Phần mềm database quan hệ này là một thành phần backend cần thiết cho các gói phần mềm khác như WordPress, Joomla, Drupal và nhiều gói phần mềm khác.
Để cài đặt hỗ trợ MySQL và PHP cho nó, hãy nhập như sau:
- sudo apt-get install mysql-server php5-mysql
Điều này sẽ cài đặt MySQL và các gói bắt buộc khác. Lưu ý quy trình cài đặt sẽ yêu cầu bạn nhập password mới cho user MySQL gốc :
Đây là một account riêng được sử dụng đặc biệt cho các chức năng quản trị trong MySQL. Tên user là root và password là bất cứ thứ gì bạn đặt ở đây. Đảm bảo đặt một password tốt với nhiều tổ hợp chữ và số khác nhau.
Sau đó, quá trình cài đặt MySQL đã hoàn tất.
Để giữ an toàn cho server database mới của bạn, bạn cần chạy một tập lệnh bổ sung. Nhập thông tin sau để bắt đầu:
- sudo mysql_secure_installation
Đến đây, kịch bản sẽ hỏi bạn một số câu hỏi. Khi được yêu cầu , hãy nhập password cho account MySQL root . Sau đó hệ thống sẽ hỏi bạn:
InteractiveChange the root password? [Y/n] n
Vì ta đã đặt password MySQL root khi cài đặt, bạn có thể nói không vào thời điểm này. Sau đó, kịch bản sẽ hỏi:
InteractiveRemove anonymous users? [Y/n] y
Trả lời có để loại bỏ tùy chọn user ẩn danh cho an toàn.
Tiếp theo, tập lệnh sẽ yêu cầu bạn cho phép hoặc không cho phép đăng nhập từ xa cho account root . Để an toàn, không cho phép đăng nhập từ xa cho root trừ khi môi trường của bạn yêu cầu điều này.
Cuối cùng, tập lệnh sẽ yêu cầu bạn xóa database thử nghiệm và sau đó reload các bảng quyền . Trả lời có cho cả hai. Thao tác này sẽ xóa database thử nghiệm và xử lý các thay đổi bảo mật.
Nếu mọi thứ đều chính xác, sau khi hoàn tất, tập lệnh sẽ trở lại với:
OutputAll done! If you have completed all of the above steps, your MySQL installation should now be secure.
Hãy kiểm tra kỹ xem server MySQL mới của ta có đang chạy không. Nhập lệnh này:
- mysql -u root -p
Nhập password root bạn đã cài đặt cho MySQL khi cài đặt gói phần mềm. Lưu ý , đây không phải là account root được sử dụng để quản trị server của bạn. Khi vào, hãy nhập thông tin sau để nhận trạng thái server , thông tin version và hơn thế nữa:
- status
Đây là một cách tốt đảm bảo rằng bạn đã cài đặt MySQL và sẵn sàng cho việc cấu hình thêm. Khi bạn hoàn tất việc kiểm tra kết quả , hãy thoát ứng dụng bằng lệnh :
- exit
Sau khi xác nhận MySQL đang hoạt động, bước tiếp theo là cài đặt PHP để bạn có thể chạy các tập lệnh và xử lý mã trên server của bạn .
Bước 4 - Cài đặt PHP
Đối với thành phần cuối cùng của ta , ta sẽ cài đặt và cài đặt PHP, viết tắt của PHP: Hypertext Preprocessor. Ngôn ngữ kịch bản phía server phổ biến này được sử dụng rộng rãi cho nội dung web động, khiến nó trở nên cần thiết đối với nhiều nhà phát triển web và ứng dụng.
Để cài đặt PHP, hãy nhập như sau:
- sudo apt-get install php5-common libapache2-mod-php5 php5-cli
Sau khi bạn đồng ý cài đặt, PHP sẽ được cài đặt trên server của bạn. Bạn sẽ thấy nhiều gói được cài đặt ngoài PHP. Đừng lo lắng; hệ thống của bạn đang tích hợp phần mềm PHP với cài đặt Apache2 hiện có của bạn và các chương trình khác.
Khởi động lại Apache trên server của bạn đảm bảo tất cả các thay đổi với cài đặt PHP có hiệu lực. Để thực hiện việc này, hãy nhập như sau:
- sudo service apache2 restart
Bây giờ, ta hãy dành một chút thời gian để kiểm tra phần mềm PHP mà bạn vừa cài đặt. Di chuyển vào folder web công cộng của bạn:
- cd /var/www/html
Khi đó, hãy sử dụng editor console yêu thích của bạn để tạo một file có tên là info.php
. Đây là một phương pháp thực hiện việc này:
- sudo nano info.php
Lệnh này sẽ sử dụng trình soạn thảo dòng lệnh nano
để mở một file trống mới với tên này. Bên trong file này, hãy nhập thông tin sau để điền vào một trang web với thông tin kết quả cho cấu hình PHP của bạn:
<?php phpinfo(); ?>
Nhấn CTRL-X
để thoát khỏi file , sau đó nhấn Y
để lưu các thay đổi bạn đã thực hiện, sau đó ENTER
để xác nhận tên file . Để truy cập thông tin cấu hình, hãy mở trình duyệt web và nhập URL sau, thay thế phần được đánh dấu bằng địa chỉ IP của server của bạn:
-
http:// 111.111.111.111 /info.php
Nếu bạn đã thực hiện đúng mọi thứ, bạn sẽ thấy trang thông tin PHP mặc định, giống như trang được hiển thị bên dưới:
Khi bạn xem xong trang PHP thử nghiệm này, hãy xóa nó để bảo mật. Để làm điều đó, hãy chạy lệnh sau:
- sudo rm -i /var/www/html/info.php
Sau đó, hệ thống sẽ hỏi bạn có muốn xóa file kiểm tra mà bạn đã tạo hay không. Trả lời có để xóa file . Sau khi hoàn tất, bạn đã hoàn thành cài đặt PHP cơ bản.
Kết luận
Đến đây bạn đã cài đặt LAMP cơ bản trên server của bạn , cung cấp cho bạn một nền tảng để tạo một loạt các trang web và ứng dụng web. Từ đây, có nhiều cách mà bạn có thể tùy chỉnh và mở rộng khả năng của server của bạn . Để tìm hiểu thêm về cách bảo mật server Linux của bạn, hãy xem Giới thiệu về Bảo mật VPS Linux của bạn . Nếu bạn muốn cài đặt server của bạn để lưu trữ nhiều trang web, hãy làm theo hướng dẫn về server ảo Apache .
Các tin liên quan
Cách cài đặt Linux, Nginx, MySQL, PHP ( LEMP) trên Debian 92018-09-13
Cách cài đặt, chạy và kết nối với Jupyter Notebook trên server từ xa
2018-09-12
Cách cài đặt và cấu hình Postfix làm server SMTP chỉ gửi trên Debian 9
2018-09-07
Cách cấu hình BIND làm server DNS Mạng Riêng trên Debian 9
2018-09-06
Thiết lập server ban đầu với Debian 9
2018-09-04
Cách cài đặt Linux, Apache, MariaDB, PHP (LAMP) trên Debian 9
2018-09-04
Cách phát triển ứng dụng Node.js TCP Server bằng PM2 và Nginx trên Ubuntu 16.04
2018-07-23
Cách thiết lập server VPN IKEv2 với StrongSwan trên Ubuntu 18.04
2018-07-16
Cách cấu hình BIND làm server DNS Mạng riêng trên Ubuntu 18.04
2018-07-06
Sử dụng Bộ định tuyến React 4 với Kết xuất phía server
2018-06-04