Thiết lập virtual host XAMPP

Thiết lập virtual host cho xampp để sử dụng domain dạng mysite.local thay vì localhost/mysite.

1. Bật config cho phép sử dụng vhosts

Chắc chắn đã bật config cho phép chạy vhost bằng việc kiểm tra ở file xampp\apache\conf\httpd.conf và uncomment nếu có như bên dưới.
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

2. Phân quyền cho thư mục Projects

Giả dụ các project của bạn đều nằm trong thư mục Projects và bạn không yêu cầu bảo mật cao trong quá trình dev. Bạn có thể thêm block sau vào cuối file xampp\apache\conf\httpd.conf. Nếu không phân quyền, khi bạn truy cập rất có thể sẽ bị gặp lỗi 403.
<Directory "D:/Projects">
    Options Indexes FollowSymLinks Includes execCGI
    AllowOverride All
    Require all granted
</Directory>
Với việc add block này, bạn sẽ không phải suy nghĩ về việc apache www-data không can thiệp được vào các thư mục, file nằm trong Projects.

3. Config vhost

Bây giờ, với mỗi site, bạn chỉ cần add một đoạn block tương tự như sau:
<VirtualHost *:80>
    ServerName mysite.local
    DocumentRoot "D:/Projects/Company/mysite.local"
    ErrorLog "logs/mysite.local-error_log"
</VirtualHost>
Vì thư mục này nằm trong thư mục cha là Projects đã được phân quyền ở trên nên nội dung block chỉ đơn giản như vậy. Nếu không thì nó phải hàm hố như này:
<VirtualHost *:80>
    ServerName mysite.local
    DocumentRoot "D:/Projects/Company/mysite.local"
    <Directory "D:/Projects/Company/mysite.local">
        Options Indexes FollowSymLinks Includes execCGI
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog "logs/mysite.local-error_log"
</VirtualHost>
Sau khi config vhost xong, bạn hãy restart lại Apache.

4. Add địa chỉ vào hosts file

# XAMPP VirtualHost mappings
127.0.0.1 mysite.local
OK, bây giờ bạn bật browser lên và truy cập vào mysite.local. Ngon rồi đấy ;)

Xem thêm: Tối ưu tốc độ XAMPP trên Windows