Các bước tổng quan setup một web server trên aws ec2 với nhóm phần mềm Linux, Apache, MySql, Php như sau:
Các thành phần | Phần mềm LAMP |
---|---|
Hệ điều hành (OS) | Linux (Ví dụ: CentOS, Fedora…) |
Máy chủ chạy web (Web server) | Apache |
Cơ sở dữ liệu (Database) | MySQL |
Ngôn ngữ phát triển | PHP |
Bước 1: Đăng kí ec2 và verify tài khoản bằng visa hoặc JCB.
Bước 2: Tạo instance linux với AMI là CentOS.
Bước 3: Kết nối tới instance bằng ssh hoặc winscp
- Để chạy những câu lệnh bên dưới bạn cần sử dụng giao thức sshz. Còn winSCP hay Filezilla chỉ là một giao diện giúp ta thao tác dễ dàng hơn như upload file…
-
Trên MACOS có sẵn ssh rồi nên không cần cài chỉ việc chạy lệnh sau (nếu trên windows cần dùng putty):
> cd /Users/dotrinh/Documents/BLOG/amazon_ec2 trỏ tới thư mục chứa file .pem
> ssh -i xxx.pem ec2-user@Public DNS (IPv4) truy cập vps bằng câu lệnh này
> cd /var/www/html/ten_project trỏ tới thư mục mặc định khi apache được tạo. - Update các software package trước khi làm gì: sudo yum update
- Gõ ls -al để liệt kê các folder theo hàng dọc và nhiều thông tin hữu ích khác.
- Kiểm tra thông tin hệ điều hành hiện tại: cat /etc/os-release
Bước 4: Cài Apache
Cài Apache bằng cmd sau:
sudo yum install httpd
Khởi động apache bằng câu lệnh sau:
sudo service httpd start
Luôn khởi động Apache khi cùng hệ điều hành bằng cmd sau:
sudo chkconfig httpd on
Bây giờ đã có thể test apache, bạn truy cập vào link Public DNS (IPv4) lấy được bên trong instance của bạn.
Nếu muốn lấy ip thì chạy câu lệnh sau:
ifconfig eth0 | grep inet | awk '{ print $2 }'
Bước 5: Cài MySql
Cài MySql và khởi động nó:
sudo yum install mysql-server sudo service mysqld start
Luôn khởi động MySql cùng lúc khi hệ điều hành được khởi động bằng cmd sau:
sudo chkconfig mysqld on
Chạy câu lệnh này để hoàn thành việc cài MySql:
sudo mysql_secure_installation
Do trước đây ta chưa setup password nên lần này nó sẽ yêu cầu bạn nhập. Nhấn ENTER để setup password.
- Gõ Y tức là yes để thiết lập mật khẩu cho người dùng root.
- Nhập lại password để confirm.
- Gõ Y tức là yes để kết thúc.Chú ý nhớ thông tin để đăng nhập vào phpMyAdmin:Mysql user: root (mặc định).
Mysql pass: pass của bạn.
Bước 5: Cài PHP
Chạy câu lệnh sau:
sudo yum install php php-mysql
Bước 7: Cài phpMyAdmin.
Chạy cmd này để cài repo:
sudo yum-config-manager --enable epel
Cài đặt giao diện bằng cmd sau:
sudo yum install -y phpMyAdmin
- Khi cài phpmyadmin để có thể truy cập giao diện phpMyAdmin ở bất kỳ đâu thì sửa file sau: sudo vi /etc/httpd/conf.d/phpMyAdmin.conf tìm đoạn /usr/share/phpMyAdmin/ thay nội dung thẻ đó thành như sau:
<Directory /usr/share/phpMyAdmin/> Options Indexes FollowSymLinks MultiViews AllowOverride all Require all granted </Directory>
Bước 8: Thêm nhóm www
Thêm nhóm có tên www
sudo groupadd www
Bước 9: Thêm ec-user vào nhóm www
Thêm user vào nhóm www
sudo usermod -a -G www ec2-user
Logout ra bằng lệnh exit sau đó login lại. Gõ groups xem đã có nhóm www và ec2-user hay chưa.
Change group owner ship của /var/www
sudo chown -R root:www /var/www
Change permission của /var/www và các thư mục con chứa trong nó.
sudo chmod 2775 /var/www find /var/www -type d -exec sudo chmod 2775 {} ;
Change permission
find /var/www -type f -exec sudo chmod 0664 {} ;
Bây giờ user nằm trong group www sẽ có quyền add, delete, edit files.
Các câu lệnh hữu ích
Restart Apache
sudo service httpd restart
Uninstall Apache, PHP
sudo yum remove php*
sudo yum remove httpd
Check apache is installed
apachectl -V
Check php is installed
php –version
Check mysql is installed
/usr/bin/mysql -u root -p
Change status apache, mysql
sudo service httpd status/start/stop/restart
sudo service mysqld status/start/stop/restart
Lệnh cơ bản với Nano editor
- ctrl + shift + w: search
- alt + w: continue search
- ctrl + shift + o + enter: save
- Để cut một dòng bạn sử dụng Ctrl + K, để paste dòng đó bạn sử dụng Ctrl + U.
- Để chọn nhiều dòng trong nano editor bạn có thể sử dụng Ctrl + 6 hoặc Alt + A rồi di chuyển lên xuống
Các bài viết không xem thì tiếc:
- Các lệnh phải biết khi làm việc với Linux
- Thêm nhiều domain trong Apache – Web Server
- Lỗi 404 Not Found WordPress trên Apache