我正在尝试在Heroku上的自定义域上获取SSL证书,它告诉我要做的最后一件事是添加以下记录:
Domain Record Type DNS Target
─────────────────── ─────────── ─────────────────────────────────
www.gethomesync.com CNAME www.gethomesync.com.herokudns.com
gethomesync.com ALIAS/ANAME gethomesync.com.herokudns.com
但我的域名注册商GoDaddy没有添加ALIAS或ANAME的选项。我不太了解DNS只完成了非常基本的任务,当我需要它们时,是否有与ALDAS / ANAME等效的东西可以通过GoDaddy使用?
由于
答案 0 :(得分:6)
您不需要设置ALIAS / A记录,只需创建指向scala> :paste
// Entering paste mode (ctrl-D to finish)
val df = List((20,2,48,6,6,78), (40,78,47,74,69,6))
.toDF("house_score", "house_count", "mobile_score", "mobile_count", "sport_score", "sport_count")
df.show
val result = df
.flatMap(r => Range(0, 5, 2).map(i => (r.getInt(i), r.getInt(i + 1))))
.toDF("score", "count")
result.show
// Exiting paste mode, now interpreting.
+-----------+-----------+------------+------------+-----------+-----------+
|house_score|house_count|mobile_score|mobile_count|sport_score|sport_count|
+-----------+-----------+------------+------------+-----------+-----------+
| 20| 2| 48| 6| 6| 78|
| 40| 78| 47| 74| 69| 6|
+-----------+-----------+------------+------------+-----------+-----------+
+-----+-----+
|score|count|
+-----+-----+
| 20| 2|
| 48| 6|
| 6| 78|
| 40| 78|
| 47| 74|
| 69| 6|
+-----+-----+
df: org.apache.spark.sql.DataFrame = [house_score: int, house_count: int ... 4 more fields]
result: org.apache.spark.sql.DataFrame = [score: int, count: int]
的CNAME记录(您可以使用gethomesync.herokussl.com
Heroku Documentation检查端点名称):
输入名称值
CNAME www gethomesync.com.herokudns.com
要创建裸域(无需编写 www ),您需要将heroku certs
转发至gethomesync.com
:
在转发下点击域名 - > '管理' - >然后点击“添加转发”
'转发到'应为wwww.gethomesync.com
(您的域名)
'重定向类型'应该是' 301
'转发设置'应该只是转发'
答案 1 :(得分:1)
这里是警告。正如@NikitaAvvakumov和@deviant在某些评论中指出的那样,接受的答案不正确。
如Heroku文档所述
Heroku上的根域要求使用“类似CNAME”的记录,通常称为ALIAS或ANAME记录。
没有这些记录,
对https://example.com的请求将因SSL错误而失败。
同样,即使您选择从根域重定向到子域(例如,从In [46]: bits4 = np.array([[0, 0, 0, 0], [0, 0, 0, 1], [0, 0, 1, 0], [0, 0, 1, 1], [0, 1, 0, 0], [
...: 0, 1, 0, 1], [0, 1, 1, 0], [0, 1, 1, 1], [1, 0, 0, 0], [1, 0, 0, 1], [1, 0, 1, 0], [1, 0,
...: 1, 1], [1, 1, 0, 0], [1, 1, 0, 1], [1, 1, 1, 0], [1, 1, 1, 1]])
In [47]: bits4
Out[47]:
array([[0, 0, 0, 0],
[0, 0, 0, 1],
[0, 0, 1, 0],
[0, 0, 1, 1],
[0, 1, 0, 0],
[0, 1, 0, 1],
[0, 1, 1, 0],
[0, 1, 1, 1],
[1, 0, 0, 0],
[1, 0, 0, 1],
[1, 0, 1, 0],
[1, 0, 1, 1],
[1, 1, 0, 0],
[1, 1, 0, 1],
[1, 1, 1, 0],
[1, 1, 1, 1]])
In [48]: x = np.array([0, 1, 5, 14, 9, 8, 15])
In [49]: bits4[x]
Out[49]:
array([[0, 0, 0, 0],
[0, 0, 0, 1],
[0, 1, 0, 1],
[1, 1, 1, 0],
[1, 0, 0, 1],
[1, 0, 0, 0],
[1, 1, 1, 1]])
重定向到Forest currentForest = Forest.GetCurrentForest();
),它也仅适用于非SSL请求 >。对https://example.com的任何请求都将失败,并显示SSL错误。
一个简单的解决方案是使用另一个DNS主机。例如,我使用CloudFlare(免费计划绰绰有余,并且提供了出色的功能),它使用了与Heroku兼容的example.com
,就像使用ALIAS(默认情况下使用此选项-您不必除了配置名称服务器和添加DNS记录外,还可以执行其他任何操作。您可以同时检查Heroku和CloudFlare的教程,这非常容易。)