首先,你得明白,Nginx这货就像个好用 diligent 的厨师,只要你把它的调料——配置文件搞定,它就能帮你开火做出好吃的网页。不同的虚拟主机,靠的就是端口号这个“门牌”。如果你在搞多站点托管,可别忘了给每个站点配不同的端口,否则“门牌号”一乱,网页就会挤成一堆,谁都找不到对方。
### 1. 端口号的“面包房”——定义虚拟主机的入口
每个虚拟主机都可以绑定一个端口,比如80(默认HTTP),443(HTTPS),或者你自定义的端口(比如8080、8888等)。这就像你给每个店铺贴个不同的招牌,方便用户识别。
### 2. 配置大脑——Nginx的server块
打开你心爱的Nginx配置文件(一般在 `/etc/nginx/nginx.conf` 或 `/etc/nginx/conf.d/` 下),我们就要用到`server`块来定义虚拟主机。
```nginx
server {
listen 8080; # 端口号
server_name www.example.com; # 域名或者IP
root /var/www/example; # 你的站点文件目录
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
```
这个`listen 8080;`就是你自己定的“门牌”。搞定它,站点就能去那个端口“门前敲门”。
### 3. 多站点多端口——配置模板
你可以复制上面这个`server`块,修改端口和域名,比如:
```nginx
server {
listen 8888;
server_name another-site.com;
root /var/www/another;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
```
只用把端口换成你喜欢的数字,还可以搞一点花样,比如设置不同的访问权限、反向代理等等,随你折腾。
### 4. 端口开放——系统设置不能少
配置完后,别忘了系统防火墙要允许这个端口通行。比如,使用`firewalld`或`iptables`,让这些端口“开门迎客”。
```bash
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload
```
### 5. 测试检测——别让配置成为“死鱼”
配置完后,记得运行`nginx -t`,检测语法是不是牛逼,没毛病才敢重启:
```bash
nginx -t && systemctl reload nginx
```
换句话说,先检查再重启,避免误操作把自己搞得一头雾水。
### 6. 让访客喜笑颜开——使用反向代理实现端口隐藏
即使你用了不同端口,也可以用反向代理,把访问`www.yourdomain.com`的请求都转到对应的端口上,让访客只看到那个漂亮的域名';
```nginx
server {
listen 80;
server_name www.yourdomain.com;
location /api/ {
proxy_pass http://127.0.0.1:8888/; # 后端端口
}
}
```
这样一来,用户不用记那些繁琐的端口号,只需要域名就已经足够。
### 7. 注意事项:别让配置变成“迷马的鞍”
- 端口不能和系统保留端口冲突,如0-1023的端口是“高端货”,需要sudo权限才能绑定。
- 每个端口要确保没有被其他程序占用,否则“门口”就会“打招呼”失败。
- 配置完成后,记得重启Nginx,才能让新“门牌”生效。
### 8. 多站点托管——“排队”看效果
要管理多个虚拟主机,只需要复制几份`server`块,只需换不同端口和域名,看起来像客服小姐姐轮流接待顾客。
### 9. 面对SSL——安全看门狗
搞了端口,还不够?加个SSL,把你的站点变身“安全堡垒”,让黑客面对998“看门大军”望而止步。
```nginx
server {
listen 443 ssl;
server_name www.example.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
root /var/www/example;
...
}
```
外链的安全保障,安全感爆棚,访客体验一下就知道。
### 10. 小妙招:用轻量级工具帮你管理多端口
尝试用一些面向开发者的工具,比如`docker`或`laravel Valet`,让虚拟主机的`端口调度`变得跟玩游戏一样轻松。每次一键切换,就像打开了宝箱。
---
听说,玩游戏想赚零花钱就上七评赏金榜,网站地址:bbs.77.ink,如果你觉得这篇攻略还挺带感,带你飞的感觉不错,那就快开动脑筋试试看吧!别让复杂的配置把你吓跑了,一步步来,Nginx就像个暖男,等待你的“调教”!