Évitez les problèmes SOP, combinez les origines, les services proxy, utilisez SSL, HTTP2, SSI et plus encore… pendant le développement !
Installation | Utilisation | Configuration | Exemples de projets | Assistance | Journal des modifications
Proxrox est un utilitaire de ligne de commande qui démarre une instance Nginx locale pour servir des fichiers statiques, proxy un ou plusieurs services sous une seule origine, utiliser SSL localement et, généralement, pour obtenir un environnement de développement similaire à un environnement de production.
Proxrox y parvient en utilisant Nginx. Lorsqu'il est demandé à proxrox de démarrer un serveur, il créera un fichier de configuration Nginx dans un emplacement temporaire et démarrera une instance Nginx à l'aide de ce fichier de configuration. Cela signifie que proxrox peut théoriquement prendre en charge toutes les fonctionnalités de Nginx.
Vous pouvez également utiliser Proxrox pour déboguer des applications Web, comme indiqué dans la présentation suivante.
TL;DR; npm install -g proxrox
. Nginx doit être sur $PATH
et exécutable sans privilèges de super-utilisateur.
Des instructions d’installation détaillées peuvent être trouvées dans INSTALLATION.md.
Démarrez proxrox en utilisant un fichier de configuration local. Le format et les options prises en charge sont expliqués dans le fichier CONFIGURATION.md.
proxrox start .proxrox.yaml
Arrêtez les instances Nginx en cours d'exécution (arrête tout) :
proxrox stop
L'expérience a montré que la définition d'options via des fichiers de configuration, par exemple .proxrox.yaml
, est l'option la plus couramment utilisée. Des exemples de projets fonctionnels avec la configuration de projet recommandée peuvent être consultés dans le répertoire des exemples.
Les environnements de développement doivent ressembler aux environnements de production. Cela signifie que les fonctionnalités côté serveur, la sécurité de la couche de transport, la compression et bien plus encore devraient exister pendant le développement. Non seulement cela est important pour optimiser la vitesse des pages, mais cela vous permet également de détecter rapidement les problèmes de sécurité, par exemple une page sécurisée faisant référence à un contenu non sécurisé.
Qu'il s'agisse d'une application orientée services, basée sur des microservices, d'une architecture client orientée ressources ou d'une application à page unique, la politique de même origine est souvent un problème pour le développement local. Les gens contournent ce problème de diverses manières. Alors que la plupart des équipes ont mis en place de bonnes pratiques pour les environnements de production, les environnements de développement en manquent souvent. Les solutions que j'ai vues vont du partage de ressources multi-origines pour le développement local activé via des indicateurs de fonctionnalités à la désactivation complète de la sécurité Web dans les navigateurs.
De nombreuses personnes ne connaissent pas ou n'utilisent pas les inclusions côté serveur. Il y a probablement plusieurs raisons à cela. Une chose que j'ai moi-même remarquée, c'est qu'il faut du temps pour configurer un environnement de développement approprié avec des serveurs proxy.
Quelque chose ne fonctionne pas comme prévu ? N'hésitez pas à me contacter sur Twitter via @BenRipkens !