【问题标题】:Wildcard dynamic subdomain(s) in Homestead Laravel 5.1 on OS X YosemiteOS X Yosemite 上 Homestead Laravel 5.1 中的通配符动态子域
【发布时间】:2015-11-24 04:09:56
【问题描述】:

我正在尝试让通配符子域在我的 mac (OS X Yosemite) 上本地解析。

用户创建自己的网站,并根据他们的用户名拥有 username.project.mac(或 *.project.mac)。

我的 Homestead 为 www.project.macapp.project.macproject.mac 正常工作,因为这些是预设路线,但我需要 username.project.mac 是动态的。

.hosts

# Homestead
192.168.10.10 project.mac
192.168.10.10 app.project.mac
192.168.10.10 www.project.mac

Homestead.yaml

---
ip: "192.168.10.10"
memory: 2048
cpus: 2

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: /Users/me/Code
      to: /home/vagrant/Code

sites:
    - map: project.mac
      to: /home/vagrant/Code/project/user.project.com/public
    - map: app.project.mac
      to: /home/vagrant/Code/project/app.project.com/public
    - map: www.project.mac
      to: /home/vagrant/Code/project/www.project.com/public

databases:
    - homestead

variables:
    - key: APP_ENV
      value: local

routes.php

Route::group(['domain' => '{username}.project.mac'], function ($username) {
    return $username;
});

我什至已经完成了本教程:http://passingcuriosity.com/2013/dnsmasq-dev-osx/,这“似乎”一直有效,直到我尝试 ping 它时无法解决 test.testing.mac 的最后一点。 project.mac 在我 ping 时确实解决了。

我还根据此回复将/etc/nginx/sites-available/project.mac 编辑为server_name project.mac *.project.mac;https://laracasts.com/discuss/channels/general-discussion/homestead-and-subdomains/replies/46620

我不知道还能尝试什么。

【问题讨论】:

标签: laravel nginx dns subdomain homestead


【解决方案1】:

发现的第一个问题 通常通配符域可能无法用作 *.domain.com。但是你可能需要尝试

server_name ~^(.*)\.example\.com$ example.com ;

即使您在 /etc/nginx/sites-available/project.mac 中添加了更改,也要确保在启用站点的目录中也可以使用此符号链接。除非启用站点的目录中存在符号链接,否则您对 prokect.mac 文件的更改不会反映。

转到启用站点的目录和

sudo ln -s ../sites-available/project.mac

您可能需要使用

重新加载 nginx 服务器配置
sudo nginx -s reload

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-17
    • 2017-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多