#nginx #setup #command-line-tool #local #domain #environment #dev

bin+lib taco_dev

使用 nginx 和 dnsmasq 为开发设置本地域环境的 Rust 命令行工具

1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2018年1月26日

#28 in #nginx

MIT 许可证

10KB
196

taco_dev

一个命令行工具,用于使用 nginxdnsmasq 设置本地域环境进行开发。

状态:未准备好。

TacoDev 0.1.0
Fraser Xu <[email protected]>
Taco Dev

USAGE:
    taco_dev [SUBCOMMAND]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

SUBCOMMANDS:
    dnsmasq    Set up dnsmasq
    help       Prints this message or the help of the given subcommand(s)
    nginx      Set up NGINX
    reload     Restart nginx

要求

  • dnsmasq - Dnsmasq 为小型网络提供网络基础设施:DNS、DHCP、路由广告和网络启动。
  • nginx - HTTP 和反向代理服务器。

如果您在 Mac 上并且已经安装了 howebrew,只需运行 homebrew install dnsmasq nginx 即可。

用法

  1. 设置 dnsmasq
$ taco_dev dnsmasq --domain=test

验证

$ ping taco_dev.test
PING taco_dev.test (127.0.0.1): 56 data bytes
  1. 设置 nginx

要告诉 nginx 将请求代理到端口 80,我们需要定义上游服务器。它可以是运行在特定端口的本地服务器 localhost:8080 或 UNIX 套接字对象 unix:/tmp/example.test

$ taco_dev nginx --upstream=127.0.0.1:8000 --server=taco_dev.test --root=/Users/fraserxu/projects/taco_dev;

这将在 nginx/servers 目录中添加一个 taco_dev.conf 文件。

upstream taco_dev.test {
    server unix:/tmp/taco_dev;
}

server {
    listen 80;
    server_name taco_dev.test;
    root /Users/fraserxu/projects/taco_dev;

    try_files $uri/index.html $uri @taco_dev.test;

    location @taco_dev.test {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_redirect off;

        proxy_pass http://taco_dev.test;
    }
}
  1. 重新加载 nginx 并 🎉
$ taco_dev reload
$ open http://taco_dev.test

许可证

MIT

依赖项

~1MB