Maison >développement back-end >Golang >Explication détaillée de la façon de déployer des applications Golang sur Nginx

Explication détaillée de la façon de déployer des applications Golang sur Nginx

PHPz
PHPzoriginal
2023-04-13 18:34:191462parcourir

Alors que la séparation du front-end et du back-end devient de plus en plus populaire, Golang devient de plus en plus populaire parmi les développeurs en tant que langage hautes performances. En termes de déploiement d'applications Golang, Nginx, en tant que serveur Web hautes performances et serveur proxy inverse, devient de plus en plus populaire parmi les développeurs. Ce qui suit explique comment déployer des applications Golang sur Nginx.

1. Installez l'environnement golang

Avant de commencer à utiliser golang, vous devez d'abord installer l'environnement golang. Vous pouvez télécharger le package binaire correspondant depuis le site officiel de Golang ou l'installer directement à l'aide d'outils de gestion de packages tels que apt, yum, etc.

2. Écrire une application Golang

Ensuite, nous écrivons une application Golang simple pour un déploiement ultérieur à l'aide de Nginx.

package main

import (
    "fmt"
    "net/http"
)

func sayHello(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintln(w, "Hello, golang!")
}

func main() {
    http.HandleFunc("/", sayHello)

    if err := http.ListenAndServe(":8080", nil); err != nil {
        panic(err)
    }
}

Le code ci-dessus définit un service HTTP avec la route "/" et renvoie une simple chaîne. Enregistrez-le en tant que fichier main.go et exécutez la commande go build pour compiler.

3. Configurez le proxy inverse Nginx

Ensuite, nous devons utiliser Nginx pour inverser le proxy de l'application golang. Ajoutez d'abord le contenu suivant au fichier de configuration Nginx :

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

Dans le fichier de configuration Nginx ci-dessus, nous avons configuré un service HTTP avec le port 80 pour example.com et des requêtes proxy pour le chemin /example vers le port 8080. Dans le même temps, les valeurs des champs Host et X-Real-IP dans les informations d'en-tête de la demande de proxy sont définies.

4. Démarrez les applications Nginx et Golang

Enfin, il suffit de démarrer les applications Nginx et Golang. Exécutez les commandes suivantes dans le terminal :

$ sudo nginx -s reload   # 重新加载Nginx配置文件
$ ./main                 # 启动golang应用

Maintenant, nous pouvons visiter example.com dans le navigateur et voir la chaîne "Hello, golang!".

Résumé :

Grâce aux pratiques ci-dessus, nous pouvons constater que Nginx, en tant que serveur Web hautes performances et serveur proxy inverse, est également très pratique pour le déploiement et la gestion d'applications Golang. De plus, Nginx peut également implémenter des fonctions avancées telles que l'équilibrage de charge et la mise en cache, rendant les applications Golang plus efficaces et plus stables.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn