recherche

Maison  >  Questions et réponses  >  le corps du texte

golang - nginx en tant que proxy inverse car le serveur ne peut pas lire les fichiers statiques

Le html du site contient le code suivant :

<link rel="stylesheet" href="/static/css/bootstrap.min.css" />
<link rel="stylesheet" href="/static/css/bootstrap-theme.min.css" />
<link rel="stylesheet" href="/static/css/jquery.treegrid.css" />
<link rel="stylesheet" href="/static/css/browseraudit.css" />

Le problème maintenant est que le navigateur ne peut pas lire ces fichiers
Utilisez go comme serveur et nginx comme proxy inverse
les fichiers html sont placés dans le répertoire /home/user/project/
static et d'autres dossiers sont également placés dans ce répertoire
/ home/user/project/ est le répertoire racine du projet

nginx a la configuration suivante

location /static/ {
    alias /home/user/project/static/;
}

Mais j’ai l’impression que ça ne marche pas

Comment puis-je faire en sorte que le navigateur trouve correctement le fichier spécifié sans modifier le code original de la page Web ?

大家讲道理大家讲道理2741 Il y a quelques jours1194

répondre à tous(1)je répondrai

  • 怪我咯

    怪我咯2017-05-16 17:18:46

    Permettez-moi de vous donner un fichier de configuration nginx de beego pour votre référence. Le principe général est qu'en plus de spécifier les caractères css, js, fonts et img dans l'URL, nginx prend le relais. sera transmis à la requête backend, qui équivaut au web ouvert par GO Server

    .
    server {
        listen       80;
        server_name  .a.com;
    
        charset utf-8;
        access_log  /home/a.com.access.log;
    
        location /(css|js|fonts|img)/ {
            access_log off;
            expires 1d;
    
            root "/path/to/app_a/static";
            try_files $uri @backend;
        }
    
        location / {
            try_files /_not_exists_ @backend;
        }
    
        location @backend {
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_set_header Host            $http_host;
    
            proxy_pass http://127.0.0.1:8080;
        }
    }

    répondre
    0
  • Annulerrépondre