diff --git a/gddo-server/main.go b/gddo-server/main.go
index 0105793..e712a22 100644
--- a/gddo-server/main.go
+++ b/gddo-server/main.go
@@ -789,6 +789,19 @@
 	h.ServeHTTP(resp, req)
 }
 
+// otherDomainHandler redirects to another domain keeping the rest of the URL.
+type otherDomainHandler struct {
+	scheme       string
+	targetDomain string
+}
+
+func (h otherDomainHandler) ServeHTTP(w http.ResponseWriter, req *http.Request) {
+	u := *req.URL
+	u.Scheme = h.scheme
+	u.Host = h.targetDomain
+	http.Redirect(w, req, u.String(), http.StatusFound)
+}
+
 func defaultBase(path string) string {
 	p, err := build.Default.Import(path, "", build.FindOnly)
 	if err != nil {
@@ -950,7 +963,12 @@
 
 	cacheBusters.Handler = mux
 
-	var root http.Handler = rootHandler{{"api.", apiMux}, {"", mux}}
+	var root http.Handler = rootHandler{
+		{"api.", apiMux},
+		{"talks.godoc.org", otherDomainHandler{"https", "go-talks.appspot.com"}},
+		{"www.godoc.org", otherDomainHandler{"https", "godoc.org"}},
+		{"", mux},
+	}
 	if gceLogName != "" {
 		logc, err := logging.NewClient(ctx, projID, gceLogName)
 		if err != nil {
