Migration vers nginx sur un server en direct

J'ai un server Mediatemple (Centos / Plesk) exécutant LAMP dans un site web en direct.

J'ai vu des didacticiels expliquant comment installer nginx mais je ne comprends pas comment cela devrait être fait dans un server en direct.

Si je ne me trompe pas, je dois installer nginx et l'exécuter sur un autre port pour voir que tout fonctionne. Ensuite, quand tout fonctionne, je commute son port à 80 et tue Apache.

Si tel est le cas, j'ai quelques questions.

Est-ce que cela fonctionnera avec php en parallèle avec Apache? (N'est-il pas une modification de la configuration php pour nginx?).

Comment puis-je tester les connections https (ils ont un port dédié, donc je ne peux pas utiliser un autre port pour le faire fonctionner en parallèle avec Apache.

J'apprécierais tout conseil sur l'installation, l'essai et la commutation vers nginx sur un server en direct sans interrompre le trafic actuel.

Merci, Niro

Si vous utilisez PHP dans des modes CGI ou FastCGI, vous devriez pouvoir partager les files binarys avec Apache et nginx bien. Si vous utilisez mod_php, vous aurez besoin de plus de travail.

Si vous finissez par exécuter deux configurations de PHP sur la même machine, vous devez vous assurer qu'elles s'exécutent dans le même context user – mod_php exécutera des scripts en tant qu'user d'Apache (souvent appelé «personne» ou «www-data» (www-data is le défaut Debian) ou la plupart des configurations CGI / FastCGI utilisent suEXEC ou tellement pour exécuter des scripts sous les droits de security de l'user qui possède le script – cette différence peut créer des problèmes importants en ce qui concerne les propriétaires de files et les permissions.

Pour HTTPS: vous pouvez exécuter sur différents ports bien – c'est le nom du server auquel les certificates sont généralement spécifiques. Un process du server Web exécutant l'écoute sur le port 444 sur l'adresse 111.222.333.444 peut utiliser le certificate pour "www.yourdomain.com" tout comme une list de process au 22.33.44.55 port 443.

Au lieu d'essayer d'exécuter tout cela sur une machine, je vous recommand vivement d'installer nginx sur une autre machine ou une machine virtuelle et essayer de migrer vos systèmes là-bas pour tester. Une fois que vous avez fait cela, vous aurez une meilleure idée de ce qu'il faut faire pour migrer le site en direct. Ne vous contentez pas de jouer avec vos servers en direct et espérons que le process se déroulera sans problème la première fois!

Vous pouvez l'utiliser le long du côté apache, oui. Le package de votre distro peut se plaindre de l'installer à côté d'apache, mais essayez de le forcer si nécessaire, et de modifier les ports utilisés avant d'essayer de le (re) démarrer.

http utilise également un port par défaut (80), tout comme le port de https 443. Indiquez simplement un autre port dans votre server (883, par exemple) forcer le port dans votre browser ( https: // yourserver: 883 ) et continuer à tester normalement .

Quand tout semble fonctionner, arrêtez nginx, définissez les ports à la normale, arrête l'apache, lance nginx. Terminé.