这几天在帮朋友写一个网站,他的域名还没有备案成功,我想先用服务器ip访问,以前配置成功过,这次再去配置时结果……有点费劲,感觉还是高中老师说得好——“好记性不如烂笔头”,所以这次说啥也要记录一下。
web服务器选择的是nginx。
server
{
listen 80; #监听端口号
#server_name xxx.com; #你的域名
location / {
root /myweb; #你的静态页面所在目录
index index.html; #你的静态页面名字
}
include enable-php.conf; #默认的不用管
}
经过上面的配置,你就可以通过 ip/,比如xxx.xxx.xxx.xxx/访问到你部署在服务器上的html页面了。
注意,这里有一个大坑,上面location/下的root不要配置成形如/root/xxx的形式,因为好像是nginx默认会对服务器的/root下的文件进行保护,不允许访问。否则访问xxx.xxx.xxx.xxx/时会一直报错403!
如果你的静态页面的js中有使用get/post请求访问后端接口,也没关系,通过下面的配置就可以完成了!
server
{
listen 80;
#server_name xxx.com;
location / {
root /myweb;
index index.html;
}
location /my {
#反向代理访问后端接口
proxy_pass http://localhost:8081/upload;
}
include enable-php.conf;
}
假如你在前端js中想要访问的后端接口是 http://123.xx.xx.xx:8081/upload,那么你只需要在nginx中实现上面的配置,然后将js中的请求改为 http://123.xx.xx.xx/my 即可!
nginx不允许直接请求http://123.xx.xx.xx:8081/upload,所以需要使用 /my反向代理8081端口下的upload接口。
Perfectly!!!