Trong bài viết này xTraffic.pep.vn sẽ hướng dẫn các bạn cách cài đặt cách cài đặt Linux, Apache, MySQL, PHP (LAMP) trên CentOS.
LAMP là gì?
LAMP là một nhóm các phần mềm mã nguồn mở bao gồm Linux (ở đây là CentOS), Apache, MySQL và PHP được dùng trên các server để chạy website (được gọi là web server).
Cách cài đặt Apache, MySQL và PHP trên CentOS
Đầu tiên bạn cần cài đặt hệ điều hành CentOS trên VPS hoặc Server và có quyền quản trị cao nhất để thực hiện. Thông thường, nếu bạn đang sử dụng VPS tại DigitalOcean hay VULTR thì việc cài đặt CentOS là tự động và khá dễ dàng khi bạn khởi tạo VPS.
Bước 1 – Cài đặt Apache trên CentOS
Apache là một phần mềm mã nguồn mở miễn phí chạy trên 50% máy chủ web trên toàn thế giới.
Để cài đặt Apache, bạn đăng nhập vào VPS hoặc Server thông qua SSH và gõ dòng lệnh sau :
sudo
yum
install
-y httpd
Trong quá trình cài đặt, chương trình sẽ hỏi bạn để xác nhận đúng phần mềm cần cài, khi đó bạn cứ nhấn nhập “y” và nhấn enter
Sau khi cài đặt xong, bạn có thể khởi động Apache trên Server bằng cách dùng lệnh sau:
sudo
service httpd start
Để kiểm tra xem Apache đã chạy đúng chưa, bạn truy cập vào địa chỉ IP của Server thông qua trình duyệt.
Ví dụ địa chỉ IP VPS của tôi là 128.199.173.191 thì sau khi tôi truy cập vào http://128.199.173.191/ bằng trình duyệt sẽ được kết quả như hình 1 bên dưới, điều này chứng tỏ bạn đã cài đặt và chạy thành công Apache trên VPS của bạn
Nếu bạn không biết địa chỉ IP của Server, bạn có thể chạy dòng lệnh sau để biết :
ifconfig
eth0 |
grep
inet |
awk
'{ print $2 }'
Trên CentOS, thư mục lưu trữ web mặc định của Apache được lưu ở thư mục “/var/www/html/” và tệp tin cấu hình được lưu tại “/etc/httpd/conf/httpd.conf” ; còn các file cấu hình khác được lưu tại thư mục “/etc/httpd/conf.d/”
Bước 2 – Cài đặt MySQL trên CentOS
MySQL là một hệ thống quản lý cơ sở dữ liệu mạnh mẽ và miễn phí, được sử dụng để tổ chức và lấy dữ liệu trên Server
Để cài đặt MySQL, bạn thực hiện lệnh sau :
sudo
yum
install
-y mysql-server
Khởi động MySQL bằng lệnh sau :
service mysqld start
Sau đó, bạn cần chạy dòng lệnh sau để cấu hình lần đầu cho MySQL :
sudo
/usr/bin/mysql_secure_installation
Ví dụ :
# sudo /usr/bin/mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current password for the root user. If you've just installed MySQL, and you haven't set the root password yet, the password will be blank, so you should just press enter here.
Enter current password for root (enter for none): |
Khi tới đoạn “Enter current password for root (enter for none):”, do đây là lần đầu chạy MySQL nên bạn chưa thiết lập password cho tài khoản root của MySQL, nên bạn không nhập gì cả và chỉ nhấn Enter.
Sau đó ta sẽ thấy :
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL root user without the proper authorisation.
Set root password? [Y/n] |
Tới đây, MySQL sẽ hỏi bạn có muốn nhập mật khẩu cho tài khoản root của MySQL? Và tất nhiên bạn sẽ phải nhập “Y” và nhập 2 lần mật khẩu cho tài khoản root. Lưu ý đây là tài khoản có quyền quản trị cao nhất của MySQL, do đó bạn nên chọn mật khẩu có trên 12 ký tự (bao gồm chữ hoa, chữ thường, chữ số và ký tự đặc biệt), sau đó lưu tại 1 nơi bí mật để phòng khi bạn quên mất mật khẩu.
Sau đó :
Set root password? [Y/n] Y New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success!
By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment.
Remove anonymous users? [Y/n] |
Tới đây, MySQL sẽ hỏi bạn có muốn xoá tài khoản nặc danh (anonymous), vì lý do an toàn thì bạn nên chọn “Y”
Remove anonymous users? [Y/n] Y ... Success!
Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] |
Tại đây, MySQL sẽ hỏi là bạn sẽ không cho đăng nhập tài khoản root từ xa? Và cũng vì lý do an toàn, bạn cũng nên chọn “Y”.
Disallow root login remotely? [Y/n] Y ... Success!
By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment.
Remove test database and access to it? [Y/n] |
MySQL hỏi bạn có muốn xoá database test và không cho truy cập vào nó? Bạn chọn “Y” và nhấn Enter để tiếp tục
Remove test database and access to it? [Y/n] Y - Dropping test database... ... Success! - Removing privileges on test database... ... Success!
Reloading the privilege tables will ensure that all changes made so far will take effect immediately.
Reload privilege tables now? [Y/n] |
Tới “Reload privilege tables now? [Y/n]”, bạn tiếp tục chọn “Y” để hoàn thành
Reload privilege tables now? [Y/n] Y ... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MySQL installation should now be secure.
Thanks for using MySQL! |
Tới đây bạn đã hoàn thành việc chạy MySQL lần đầu. Bước tiếp theo, chúng ta sẽ cài đặt PHP và đầy đủ các bộ thư viện phổ biến và cần thiết cho nó.
Bước 3 – Cài đặt PHP trên CentOS
PHP là một ngôn ngữ kịch bản web mã nguồn mở được sử dụng rộng rãi để xây dựng các trang web động.
Để cài đặt PHP trên CentOS, bạn chạy dòng lệnh sau :
sudo
yum
install
-y php php-mysql
Cài đặt thư viện và modules cho PHP
Hiện tại PHP có rất nhiều thư viện và modules giúp bạn thực hiện được nhiều việc, bạn có thể xem danh sách các thư viện có sẵn cho PHP bằng dòng lệnh sau :
yum search php-
Theo như bạn thấy là hiện đang có rất nhiều thư viện và modules cho PHP nên bạn hãy chọn những thư viện cần thiết cho PHP của bạn từ danh sách này. Sau khi bạn đã chọn được thư viện mình mong muốn thì dùng lệnh yum để cài đặt. Ví dụ trong trường hợp này, xTraffic.pep.vn sẽ cài đặt những thư viện phổ biến và thường dùng nhất cho PHP như sau :
yum
install
-y php-common php-bcmath php-cli php-devel php-mcrypt php-mysql
php-mysqlnd php-password-compat php-pclzip php-pdo php-gd php-imap php-ldap
php-odbc php-pear php-xml php-xmlrpc php-dba php-embedded php-enchant
php-mbstring php-intl libssh2 php-pecl-ssh2 php-pecl-memcached
php-pecl-redis php-soap php-xmlseclibs php-phpseclib php-php-gettext
php-phpass php-pecl-zip php-opcache php-mssql php-magickwand
php-pecl-crypto php-pecl-geoip php-pecl-igbinary php-pecl-oauth php-pecl
-rar php-pecl-yaml php-pgsql php-phpseclib-crypt-aes php-phpseclib-crypt-base
php-phpseclib-crypt-blowfish php-phpseclib-crypt-des
php-phpseclib-crypt-
hash
php-phpseclib-crypt-random php-phpseclib-crypt-rijndael
php-phpseclib-crypt-rsa php-phpseclib-crypt-tripledes php-phpseclib-crypt-twofish
Tới đây bạn đã cài đặt thành công bộ phần mềm LAMP để chạy các ứng dụng web trên server của bạn. Tuy nhiên, bạn cũng cần phải thiết lập thêm để Apache (PHP tự động chạy khi khởi động Apache) và MySQL tự động chạy khi khởi động Server. Để làm được điều đó, bạn cần chạy 2 dòng lệnh bên dưới
sudo
chkconfig httpd on
và
sudo
chkconfig mysqld on
Bước 4 – Kiểm tra thông tin PHP trên Server
Mặc dù bạn đã cài đặt thành công LAMP trên Server của bạn, nhưng chúng ta cũng cần kiểm tra kết quả để chắc chắn LAMP hoạt động tốt trên server của bạn.
Đầu tiên, bạn cần tạo 1 file có tên là “info.php” lưu tại tại đường dẫn “/var/www/html/info.php” có nội dung như sau:
phpinfo();
Sau đó bạn khởi động lại apache để tất cả các thay đổi có hiệu lực trên Server của bạn :
sudo
service httpd restart
Cuối cùng bạn mở trình duyệt web và truy cập vào trang info.php thông qua địa chỉ IP của Server. Ví dụ địa chỉ IP Server của tôi là 128.199.173.191 thì tôi sẽ truy cập vào địa chỉ sau “http://128.199.173.191/info.php”, và nếu bạn thấy kết quả như hình 2 bên dưới thì có nghĩa bạn đã cài đặt LAMP thành công.