web-dev-qa-db-fra.com

Nginx Reverse Proxy pour Tumblr

J'essaie actuellement de configurer un proxy inverse pour rediriger un domaine vers un blog tumblr. J'ai configuré NGinx en utilisant this Gist . Ma configuration nginx ressemble à ceci:

upstream tumblr {
        server 66.6.44.4;
}

server {
        listen          80;
        server_name     mydomain.com;

        access_log      /var/log/nginx/mydomain.access.log;

        proxy_set_header  X-Real-IP       $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header  Host            $http_Host;
        proxy_set_header  REMOTE-Host     $remote_addr;
        proxy_redirect    off;
        proxy_max_temp_file_size          0;

        location / {
                proxy_pass http://tumblr;
                break;
        }
}

server {
        listen          80;
        server_name    www.mydomain.com;
        rewrite ^/(.*)  http://mydomain.com/$1 permanent;
}

Malheureusement, ça ne marche pas. Lorsque je tente de me connecter à mon blog via mydomain.com , la page "il n'y a rien" sur Tumblr. Comment puis-je correctement faire fonctionner mon proxy inverse avec Tumblr?

Ce que j'ai essayé :

  • Je ne peux pas ajouter mydomain.com en tant que domaine personnalisé, car l'enregistrement A pointe vers l'adresse IP sur laquelle j'ai Nginx et non le domaine Tumblr requis ( 66.6. 44,4 ).
  • Changer le serveur en amont en myblog.tumblr.com ne fait absolument rien.
5
DanteTheEgregore

Bonne question! Ceci peut être fait, mais c'est relativement délicat.

Tumblr a clairement indiqué qu'ils ne souhaitaient pas que vous fassiez cela. Il y a quelque temps, ils ont cassé en silence l'intégration de CloudFlare. Tous ceux qui utilisaient ce type de proxy inverse avec CloudFlare avaient en principe démarré à partir de leur nom de domaine personnalisé sans aucun avertissement. (Gardez à l'esprit que beaucoup de gens utilisaient CloudFlare en premier lieu, parce que Tumblr donnait souvent des pages vierges ou refusait les connexions, l'intégration CloudFlare était donc bénéfique pour la fiabilité et la satisfaction des utilisateurs.)

En tant que premier domaine personnalisé à avoir moi-même adopté, précédant leur 66.6.44.4 attribution et déploiement, ce démarrage a également eu lieu moi aussi , plus tôt cet été 2013, où ils ont été désactivés mon nom de domaine personnalisé (toujours dirigé directement vers leurs propres serveurs selon leurs propres instructions) avec un préavis très court et insuffisant. Je n'ai toujours pas récupéré mon index Google. J'ai décidé de ne plus être dupé comme ça.

Itinéraire de nom de domaine personnalisé

Si vous souhaitez toujours le faire, vous devrez exécuter votre propre serveur DNS, en mode DNS split-horizon , pour fournir différentes réponses DNS. aux réseaux tumblr.com et nontumblr.com. Faire un horizon partagé sur 66.6.32.0/20 fonctionne jusqu'à présent, mais rien ne garantit qu'il continuera à fonctionner (cependant, cette partie est probablement la moins probable.).

En outre, faites probablement comme ce que vous faites déjà.

J'ai fait ça et ça marche, même si ça me semble un peu fragile, mais il n'y a pas de meilleure façon de le faire.

Notez que si vous essayez simplement de publier plusieurs enregistrements A à la fois, ou si vous essayez de publier le 66.6.44.4 uniquement temporairement pour qu'un nom de domaine personnalisé soit accepté dans leur interface, il sera alors cassé comme vous décrivez, dans un jour ou deux après, parce que tumblr vérifie constamment les enregistrements et désactive automatiquement la fonction de nom de domaine personnalisé, si elle ne voit pas les éléments qu’elle souhaite voir.

Si vous faites de la mise en cache, il y a aussi d'autres problèmes à prendre en compte (qui serait probablement une question distincte également).

Page détournant la route

Pour accéder au mode de chargement de contenu, il suffit de changer:

proxy_set_header    Host    $http_Host;

à quelque chose comme:

proxy_set_header    Host    domain.tumblr.com;
proxy_redirect      default;

N'activez pas l'option custom domain name dans l'interface.

De cette façon, vous allez simplement créer un miroir de votre tumblr.

Je vous le déconseille vivement, car il est totalement inutile, car tous les liens de type J'aime, favs et liens back -lists que vous auriez sur tumblr.com indiqueront votre nom tumblr.com (à moins que vous ne trouviez le moyen de tromper les moteurs de recherche), alors, il est peu probable que vous gagniez des positions de recherche pour votre miroir, à moins de faire quelques tours supplémentaires ou de vouloir en prendre le risque. Ce sera également déroutant pour vos visiteurs et pour vous-même.

Éviter la route du tumblr

Il existe de nombreuses alternatives à tumblr. J'enquête actuellement sur le passage à l'un des générateurs de blogs statiques basés sur Python ou sur Ruby, comme ceux basés sur Jekyll, qui fonctionnent à partir de modèles et génèrent du HTML statique. Vous pouvez toujours activer les commentaires disqus, et certains prétendent avoir une certaine intégration tumblr pour la migration hors de tumblr.

Une toute autre question, cependant. Toutefois, si vous envisagez de migrer de cette façon, il sera toujours utile d’utiliser le DNS à horizon divisé et un domaine personnalisé dans tumblr, de sorte que tous vos backlinks pointent toujours sur votre site. Il est probablement même possible d'importer vos publications dans tumblr, de les exporter automatiquement pour obtenir les URL attribuées et de mapper les URL attribuées sur votre site aux entrées réelles de votre blog alors natif Python ou Ruby, obtenir les backlinks de tumblr, sans avoir à utiliser tumblr lui-même.

8
cnst