

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Personalizzare lo Stack per la connessione al database RDS
<a name="customizing-rds-connect-customize"></a>

**Importante**  
Il AWS OpsWorks Stacks servizio ha raggiunto la fine del ciclo di vita il 26 maggio 2024 ed è stato disabilitato sia per i clienti nuovi che per quelli esistenti. Consigliamo vivamente ai clienti di migrare i propri carichi di lavoro verso altre soluzioni il prima possibile. Se hai domande sulla migrazione, contatta il Supporto AWS Team su [AWS re:post](https://repost.aws/) o tramite Premium [AWS Support](https://aws.amazon.com/support).

Dopo aver [creato un'istanza RDS](customizing-rds-connect-create.md) da utilizzare come database di back-end per il server delle applicazioni PHP, puoi personalizzare da. MyStack [Nozioni di base sugli stack Linux Chef 11](gettingstarted.md)

**Per connettere il server PHP App a un database RDS**

1. Apri la console OpsWorks Stacks e crea uno stack con un livello PHP App Server che contenga un'istanza e distribuisci Simple, come descritto in. PHPApp [Nozioni di base sugli stack Linux Chef 11](gettingstarted.md) Questo stack utilizza la versione 1 di SimplePHPApp, che non utilizza una connessione al database. 

1. [Aggiornare la configurazione dello stack](workingstacks-edit.md) per utilizzare i libri di cucina personalizzati che includono la ricetta `appsetup.rb` e i relativi file di modello e attributo.

   1. Impostare **Use custom Chef Cookbooks (Utilizza i libri di ricette di Chef personalizzati)** su **Yes (Sì)**.

   1. Impostare **Repository type (Tipo archivio)** su **Git** e **Repository URL (Archivio URL)** su `git://github.com/amazonwebservices/opsworks-example-cookbooks.git`.

1. Aggiungere alla casella dello stack **Custom Chef JSON (Chef JSON personalizzato)** per assegnare i dati di connessione RDS agli attributi `[:database]` che `appsetup.rb` utilizza per creare il file di configurazione.

   ```
   {
     "deploy": {
       "simplephpapp": {
         "database": {
           "username": "opsworksuser",
           "password": "your_password",
           "database": "rdsexampledb",
           "host": "rds_endpoint",
           "adapter": "mysql"
         }
       }
     }
   }
   ```

   Utilizzare i seguenti valori di attributo:
   + **username (nome utente)**: il nome utente master specificato durante la creazione dell'istanza RDS.

     Questo esempio usa `opsworksuser`.
   + **password**: la password master specificata durante la creazione dell'istanza RDS.

     Inserire la password specificata.
   + **database**: il database creato durante la creazione dell'istanza RDS.

     Questo esempio usa `rdsexampledb`.
   + **host**: l'endpoint dell'istanza RDS, ottenuta dalla console di RDS durante la creazione dell'istanza nella sezione precedente. Non includere il numero di porta.
   + **adapter (adattatore)**: l'adattatore.

     L'istanza RDS per questo esempio utilizza MySQL, perciò **adapter (adattatore)** è impostato su `mysql`. A differenza degli altri attributi, **adapter (adattatore)** non viene utilizzato da `appsetup.rb`. Viene invece utilizzato dalla ricetta Configure integrata nel livello PHP App Server per creare un file di configurazione diverso.

1. [Modifica la PHPApp configurazione Simple](workingapps-editing.md) per specificare una versione di Simple PHPApp che utilizza un database di back-end, come segue:
   + **Document root (Documento root)**: impostare questa opzione su `web`.
   + **Branch/Revision (Ramo/Revisione)**: impostare questa opzione su `version2`.

   Lasciare le opzioni rimanenti invariate.

1. [Modifica il livello PHP App Server](workinglayers-basics-edit.md) per configurare la connessione al database aggiungendole `phpapp::appsetup` alle ricette Deploy del livello.

1. [Implementa la nuova versione Simple](workingapps-deploying.md). PHPApp

1. Quando Simple PHPApp è distribuito, esegui l'applicazione andando alla pagina **Istanze** e facendo clic sull'indirizzo IP pubblico dell'istanza php-app1. Dovrebbe apparire la pagina seguente nel browser, che consente di immettere testo e memorizzarlo nel database.  
![\[Text input field labeled "Your Thoughts" with a "Share Your Thought" button.\]](http://docs.aws.amazon.com/it_it/opsworks/latest/userguide/images/gsb7.png)

**Nota**  
Se lo stack ha un livello MySQL OpsWorks , Stacks assegna automaticamente i dati di connessione corrispondenti agli attributi. `[:database]` Tuttavia, se si assegna JSON personalizzato allo stack che definisce valori diversi `[:database]`, sostituiscono i valori predefiniti. Poiché gli `[:deploy]` attributi sono installati su ogni istanza, tutte le ricette che dipendono dagli `[:database]` attributi utilizzeranno i dati di connessione personalizzati, non i dati del livello MySQL per. Se si desidera che un determinato livello di server di applicazione utilizzi dati di connessione personalizzati, assegnare JSON personalizzato all'evento di distribuzione del livello e limitare tale distribuzione a quel livello. Per ulteriori informazioni su come utilizzare gli attributi di distribuzione, consulta [Distribuzione di app](workingapps-deploying.md). Per ulteriori informazioni sulla sostituzione di attributi integrati OpsWorks Stacks, consulta [Sostituzione degli attributi](workingcookbook-attributes.md).