Việc chạy Apache trên máy tính cục bộ sẽ giúp đẩy nhanh việc phát triển web mà không cần phải upload lên web server thông qua FTP.
Bài viết sẽ hướng dẫn cách thức cho phép bạn tạo ra một miền riêng của từng dự án, ví dụ như http://project1; http://project2;...
1. Cấu hìnhApache
Giả định máy bạncó Apache được cài đặt và cấu hình. Nếu chưa có, bạn có thể cài đặt LAMP server bằng lệnh sau trong terminal.
sudo apt-get install lamp-server^
2. Tạo thư mục cho các project
Theo ví dụ trên, bạn hãy tạo hai thư mục cho mỗi dự án cần thực hiện.
mkdir /var/www/html/project1
mkdir /var/www/html/project2
3. Tạo hai tập tin index.html trong hai thư mục project trên
echo "Project 1" > /var/www/html/project1/index.html
echo "Project 2" > /var/www/html/project2/index.html
4. Tạo file cấu hình virtual host cho mỗi project
Bạn phải tạo một tập tin máy chủ ảo cho mỗi tên miền (sử dụng quyền root để tạo)
sudo touch /etc/apache2/sites-available/project1.conf
sudo touch /etc/apache2/sites-available/project2.conf
5. Cấu hình file file virtual host
sudo gedit /etc/apache2/sites-available/project1.conf
Nhập nội dung cấu hình sau vào project1.conf
<VirtualHost *:80>
ServerName project1
DocumentRoot /var/www/html/project1
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Tương tự, hãy thực hiện cho project2.conf
sudo gedit /etc/apache2/sites-available/project2.conf
<VirtualHost *:80>
ServerName project2
DocumentRoot /var/www/html/project2
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Lưu và thoát gedit.
6. Báo cho Apache biết các trang web đã tồn tại bằng cách sử dụng lệnh a2ensite
sudo a2ensite project1.conf
sudo a2ensite project2.conf
Khởi động lại dịch vụ apache2 bằng lệnh sau:
sudo service apache2 restart
7. Bước cuối cùng bạn thêm hai trang web mới vào file hosts.Tập tin host được sử dụng để ánh xạ tên máy thành địa chỉ IP.
sudo gedit /etc/hosts
127.0.0.1 localhost
127.0.0.1 project1
127.0.0.1 project2
Bây giờ truy cập lần lượt vào http: //project1/ và http://project2/. Nếu tất cả đã diễn ra tốt đẹp, bạn sẽ thấy các tập tin đã tạo ra trước đó.
» Tin mới nhất:
» Các tin khác: