一:listen指令
| 语法 | listen address [:port] [default_server] listen port [default_server] |
|---|---|
| 默认值 | listen :80 | :8080 |
| 位置 | server |
default_ server属性是标识符,用来将此虚拟主机设置成默认主机。所谓的默认主机指 DEFAULT_SERVER属性是标识符,用来将此虚拟主机设置成默认主机。所谓的默认主机指
的是如果没有匹配到对应的address:port,则会默认执行的。如果不指定默认使用的是 的是如果没有匹配到对应的地址:端口,则会默认执行的。如果不指定默认使用的是
第一个server。
#listen 设置比较灵活listen 127.0.0.1:8080 #监听指定的ip和端口listen 127.0.0.1 #监听指定ip的所有端口listen localhost:80 #监听本机的80端口listen 80 #监听指定端口上的链接listen *:8080
server {listen 8080;server_name localhost;location / {root html;index index.html;}}
server_name指令
server_name 用来设置虚拟主机服务的名称
如:127.0.0.1 ,localhost, 域名www.baidu.com等
| 语法 | server_name ‘name1’ ‘name2’ ‘name3’ (多个之间用空格隔开) |
|---|---|
| 默认值 | server_name |
| 位置 | server |
server_name配置的三种方式:
- 精准匹配
- 通配符匹配
- 正则表达式匹配
1.精准匹配
server {listen 8080;server_name www.baidu.com www.google.com;........}}
如果想在自己的nginx服务器上模拟一个域名测试还需要更改Windows的hosts文件将域名与127.0.0.1进行映射
windows:C:\Windows\System32\drivers\etc\hosts
hosts是一个没有扩 展名的系统文件,可以用记事本等工具打开,其作用就是将一-些常用
的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登
录的网址时,系统会首先自动从hosts文件中寻找对应的IP地址,一旦找到,系统会立即
打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的
解析。
2.基于通配符进行匹配
server_ name中支持通配符”*”,但需要注意的是通配符不能出现在域名的中间,只能出现在首段或尾段,如:
server {listen 8080;server_name *.baidu.com www.google.*; # *号不能出现在中间........}}
下面这些都会报错
server {listen 8080;server_name www.*.com www.google.c*;........}}
3.基于正则表达式


缺少一个匹配顺序
