使用可变子域是一种好的做法吗?
Is a good practice using variable subdomains?
我有一个网页,现在我想添加子域以获得更易读的 url
比如我的主页是www.myshop.com
添加
product1.myshop.com
category1.myshop.com
etc...
它托管在 Digital Ocean 上,在 Ubuntu、nginx、unicorn 和 POstgreSql 数据库下运行,使用 Ruby 在 Rails[ 上开发=45=]
阅读有关子域的文档后,我意识到我可以拥有 可变子域 ,我尝试过的是:
1) 在“Digital Ocean的域名配置
中添加一条带*的"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;
}
之后,在 Rails 程序的 Ruby 中,捕获 myshop.com
之前的任何内容(类别、产品名称...等作为子域)很容易,而且我可以自动重定向到类别网页或产品网页,或其他任何内容!
因此,例如,如果用户键入 whells.myshop.com
,我将重定向到 www.mysop。com/categories/wheels
(当然,很棒的是 wheels 是 table 中的一个值)
无需在Digital Ocean或ngingx配置文件中注册子域名
但是,这似乎太简单了……:/
这不安全吗?是一种不好的做法吗?
非常感谢,(Whosebug:非常好的网络和非常好的用户)
不,与使用路径来定向请求相比,使用子域没有内在风险。这完全取决于您组织代码的方式、使用的工具、在网站上工作的不同团队的组织方式等。
在这两种情况下,您都需要可靠的身份验证和授权。
当您在同一个域中有两个不同的网站时,子域通常很有用。例如,wordpress.com 为每个在 wordpress.com
上拥有站点的用户使用子域。如果我要在那里建立一个网站,那将是 saq7.wordpress.com
。
但是,他们也可以选择使用路径路由到不同用户的不同网站www.wordpress.com/saq7
。
这是您作为工程师可以做出的选择,标准是
- url本身的优雅
- 代码组织
- 你的团队组织
- 你喜欢橘子还是苹果...
我有一个网页,现在我想添加子域以获得更易读的 url
比如我的主页是www.myshop.com
添加
product1.myshop.com
category1.myshop.com
etc...
它托管在 Digital Ocean 上,在 Ubuntu、nginx、unicorn 和 POstgreSql 数据库下运行,使用 Ruby 在 Rails[ 上开发=45=]
阅读有关子域的文档后,我意识到我可以拥有 可变子域 ,我尝试过的是:
1) 在“Digital Ocean的域名配置
中添加一条带*的"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;
}
之后,在 Rails 程序的 Ruby 中,捕获 myshop.com
之前的任何内容(类别、产品名称...等作为子域)很容易,而且我可以自动重定向到类别网页或产品网页,或其他任何内容!
因此,例如,如果用户键入 whells.myshop.com
,我将重定向到 www.mysop。com/categories/wheels
(当然,很棒的是 wheels 是 table 中的一个值)
无需在Digital Ocean或ngingx配置文件中注册子域名
但是,这似乎太简单了……:/
这不安全吗?是一种不好的做法吗?
非常感谢,(Whosebug:非常好的网络和非常好的用户)
不,与使用路径来定向请求相比,使用子域没有内在风险。这完全取决于您组织代码的方式、使用的工具、在网站上工作的不同团队的组织方式等。
在这两种情况下,您都需要可靠的身份验证和授权。
当您在同一个域中有两个不同的网站时,子域通常很有用。例如,wordpress.com 为每个在 wordpress.com
上拥有站点的用户使用子域。如果我要在那里建立一个网站,那将是 saq7.wordpress.com
。
但是,他们也可以选择使用路径路由到不同用户的不同网站www.wordpress.com/saq7
。
这是您作为工程师可以做出的选择,标准是
- url本身的优雅
- 代码组织
- 你的团队组织
- 你喜欢橘子还是苹果...