使用hosts+Nginx进行本地开发

背景

在本地代码调试的时候,咱们能够利用系统提供的hosts文件来设置一个虚拟的域名,并利用Nginx将域名解析到指定的IP地址和端口。nginx

修改hosts文件,实现域名的访问

hosts是一个没有扩展名的系统文件,能够用记事本等工具打开。其做用就是将一些经常使用的网址域名与其对应的IP地址创建一个关联“数据库”。数据库

当用户在浏览器中输入一个须要登陆的网址时,系统会首先自动从hosts文件中寻找对应的IP地址,一旦找到,系统会当即打开对应网页,若是没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。npm

知道了原理后,咱们就打开hosts文件,添加127.0.0.1 sora.com,完成IP地址(127.0.0.1)和域名(sora.com)的映射。浏览器

另外,或许你每次都要百度“怎么打开hosts文件”“hosts文件在哪一个目录下”,这里提供一个使用命令行工具管理hosts文件的方法。服务器

首先全局安装hosts.shmarkdown

sudo npm install --global hosts.sh
复制代码

而后创建IP地址和URL的映射关系cookie

hosts add IP URL
复制代码

这样就大功告成啦✨程序的更多用法能够参考www.npmjs.com/package/hos…app

本地启动服务后,就能够经过sora.com:端口号进行访问了。在这里,咱们假设是sora.com:9080工具

经过Nginx代理解决端口映射问题

注意到上述访问是须要加端口号的,若是想去除端口号,须要使用Nginx把全部请求转移到默认的80端口。oop

一个简单的nginx配置:

//nginx.conf
server {
  listen       80;
  server_name  sora.com;
​
  location /happy-sora/ {
        proxy_pass http://localhost:9080;
        proxy_set_header   Cookie $http_cookie;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}
复制代码

到这里咱们就能够访问sora.com/happy-sora进行愉快地调试啦!✨

参考博客

文章大部份内容搬运自使用Hosts和Nginx把自定义域名映射到本地,本身加了一些本身额外学习到的东西,若有错误,还请指出~

相关文章
相关标签/搜索