在Debian系統上配置Nginx以支持多個站點是一個常見的任務。以下是一個基本的實例,展示了如何配置兩個不同的站點。
example.com
和 example.org
。在 /etc/nginx/sites-available
目錄下創建兩個新的配置文件。
sudo nano /etc/nginx/sites-available/example.com
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
location = /404.html {
root /var/www/example.com;
}
}
sudo nano /etc/nginx/sites-available/example.org
server {
listen 80;
server_name example.org www.example.org;
root /var/www/example.org;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
location = /404.html {
root /var/www/example.org;
}
}
使用 ln
命令創建符號鏈接,將站點配置文件鏈接到 /etc/nginx/sites-enabled
目錄。
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/example.org /etc/nginx/sites-enabled/
在重新加載Nginx之前,測試配置文件是否有語法錯誤。
sudo nginx -t
如果輸出顯示配置文件語法正確,繼續下一步。
重新加載Nginx以應用新的配置。
sudo systemctl reload nginx
確保你的域名解析指向你的服務器IP地址。你可以在你的域名注冊商的管理面板中進行設置。
創建每個站點的根目錄,并添加一些基本文件。
sudo mkdir -p /var/www/example.com
sudo mkdir -p /var/www/example.org
echo "Welcome to Example.com" | sudo tee /var/www/example.com/index.html
echo "Welcome to Example.org" | sudo tee /var/www/example.org/index.html
打開瀏覽器,訪問 http://example.com
和 http://example.org
,你應該能看到相應的歡迎信息。
如果你想為你的站點配置HTTPS,可以使用Let’s Encrypt提供的免費SSL證書。
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
sudo certbot --nginx -d example.org -d www.example.org
按照提示完成證書的獲取和安裝過程。
通過以上步驟,你應該能夠在Debian系統上成功配置Nginx以支持多個站點。