Per iniziare: pubblicazione di contenuti statici

Scopri come pubblicare in modo sicuro contenuti statici come file HTML, CSS e immagini dell'ambiente standard di Google App Engine.

Prima di iniziare

  1. Configura il tuo ambiente di sviluppo e crea il tuo progetto App Engine.

  2. Se utilizzi un nome di dominio personalizzato per il tuo sito web, segui le istruzioni per aggiungere un Dominio personalizzato al tuo progetto.

Pubblicazione di una pagina web

App Engine può pubblicare contenuti statici come pagine HTML e contenuti multimediali come immagini. Per contenuti statici si intendono tutto ciò che non verrà eseguito come JSP o Servlet.

L'esempio seguente è una pagina HTML di base in cui viene visualizzato un messaggio di benvenuto.

<!DOCTYPE html>
<html>
  <head>
    <title>The App Engine Blog</title>
  </head>
  <body>
    <h1>Welcome to the App Engine Blog</h1>
    <p>This is being served by App Engine!</p>
  </body>
</html>

Dove posizionare i file statici

Devi inserire i file statici pubblicati nella directory webapp dell'app. Tu possono utilizzare le cartelle, ma ricorda che tutti i percorsi e gli URI dei file sono relativi Directory webapp.

Dopo aver scelto una posizione per i file statici, devi definirne la posizione nel file appengine-web.xml, utilizzando <static-files> .

Nell'esempio seguente, una configurazione appengine-web.xml di base tratta tutti i file HTML nella directory webapp come file statici.

<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
  <threadsafe>true</threadsafe>
  <runtime>java8</runtime>
  <static-files>
    <include path="/**.html" >
    </include>
  </static-files>
</appengine-web-app>

Puoi avere più elementi <include path> che fanno riferimento a diversi e diversi tipi di file. Ampliando l'esempio precedente:

<static-files>
  <include path="/**.html" >
  </include>
  <include path="/images/**.jpg" >
  </include>
</static-files>

Ora tutti i file con l'estensione .jpg nella directory webapp/images/ da considerare come file statici.

Nell'esempio precedente, se vogliamo visualizzare logo.jpg dal webapp/images, il tag <img> avrebbe l'URI di origine <img src="/images/logo.jpg">.

Forzare l'HTTPS per tutti i contenuti statici

Sebbene App Engine supporti la distribuzione di contenuti tramite HTTP o HTTPS, dovresti utilizzare HTTPS. Per configurare URL protetti, devi aggiungere un elemento <security-constraint> alla classe web.xml. Ecco un esempio di <security-constraint>:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>blog</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

Se utilizzi <transport-guarantee>CONFIDENTIAL</transport-guarantee>, tutte le richieste vengono reindirizzate automaticamente all'URI HTTPS dei contenuti statici.

Deployment in App Engine

Puoi eseguire il deployment della tua app in App Engine utilizzando Maven.

Vai alla directory root del progetto e digita:

mvn package appengine:deploy -Dapp.deploy.projectId=PROJECT_ID

Sostituisci PROJECT_ID con l'ID del tuo progetto Google Cloud. Se il tuo pom.xml file specifica ID progetto, non devi includere la proprietà -Dapp.deploy.projectId nell' il comando che esegui.

Dopo che Maven ha eseguito il deployment dell'app, apri automaticamente una scheda del browser web per la nuova app digitando:

gcloud app browse

Passaggi successivi

I file statici possono essere utilizzati per pubblicare immagini, fogli di stile a cascata e HTML tramite App Engine. Per ampliare le tue conoscenze, ti consigliamo di Scopri come gestire i dati utente tramite moduli HTML.