【发布时间】:2016-05-31 14:28:23
【问题描述】:
我有一个网页,现在我想添加子域以便拥有更多可读的网址
比如我的主页是www.myshop.com添加
product1.myshop.com
category1.myshop.com
etc...
它托管在 Digital Ocean 上,运行于:Ubuntu、nginx、unicorn 和 POstgreSql 数据库,使用 Ruby on Rails 开发
在阅读了有关子域的文档后,我意识到我可以拥有可变子域,我尝试过的是:
1) 在“数字海洋的域配置”中添加带*的“A”记录
2) 修改 nginx 配置文件,像我为“www”子域所做的那样添加一个新行,但带有“*”
server {
listen 80;
server_name myshop.com;
return 301 $scheme://www.myshop$request_uri;
# NEW LINE --->
return 301 $scheme://*.myshop$request_uri;
}
之后,在 Ruby on Rails 程序中,捕获 myshop.com 之前的任何内容(类别、产品名称...等作为子域)很容易,我可以在那里重定向到类别网页或产品网页,或者什么都自动!
例如,如果用户输入 whells.myshop.com 我将重定向到 www.mysop.com/categories/wheels
(当然,最棒的是轮子是表中的值)
无需在Digital Ocean或ngingx配置文件中注册子域名
但是,似乎太容易令人难以置信......:/
这不安全吗?是不好的做法吗?
非常感谢,(stackoverflow:非常好的网络和非常好的用户)
【问题讨论】:
标签: security ruby-on-rails-4 nginx subdomain unicorn