PHPtutorial per AWS Cloud9 - AWS Cloud9

AWS Cloud9 non è più disponibile per i nuovi clienti. I clienti esistenti di AWS Cloud9 possono continuare a utilizzare il servizio normalmente. Ulteriori informazioni

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à.

PHPtutorial per AWS Cloud9

Questo tutorial consente di eseguire alcuni PHP script in un AWS Cloud9 ambiente di sviluppo.

Seguire questo tutorial e creare questo esempio potrebbe comportare addebiti sul tuo AWS account. Questi includono eventuali addebiti per servizi come Amazon EC2 e Amazon S3. Per ulteriori informazioni, consulta i prezzi di Amazon e EC2 i prezzi di Amazon S3.

Prerequisiti

Prima di usare questo esempio, assicurati che la configurazione soddisfi i seguenti requisiti:

  • È necessario disporre di un ambiente di AWS Cloud9 EC2 sviluppo esistente. Questo esempio presuppone che tu disponga già di un EC2 ambiente connesso a un'EC2istanza Amazon che esegue Amazon Linux o Ubuntu Server. Se disponi di un altro tipo di ambiente o sistema operativo, potrebbe essere necessario adattare le istruzioni di questo esempio per configurare gli strumenti correlati. Per ulteriori informazioni, consulta Creare un ambiente in AWS Cloud9.

  • Il file AWS Cloud9 IDE per l'ambiente esistente è già aperto. Quando si apre un ambiente, AWS Cloud9 apre il IDE relativo ambiente nel browser Web. Per ulteriori informazioni, consulta Apertura di un ambiente in AWS Cloud9.

Fase 1: installare gli strumenti necessari

In questo passaggio, si installaPHP, operazione necessaria per eseguire questo esempio.

Nota

La procedura seguente consente PHP solo l'installazione. Per installare strumenti correlati come un server Web Apache e un SQL database My, consulta Tutorial: Installazione di un server LAMP Web su Amazon Linux nella Amazon EC2 User Guide.

  1. In una sessione terminale in AWS Cloud9 IDE, verifica se PHP è già installato eseguendo il php --versioncomando. Per avviare una nuova sessione del terminale, dalla barra dei menu scegli Window (Finestra), New Terminal (Nuovo terminale). In caso di successo, l'output contiene il numero di PHP versione. Se PHP è installato, vai avanti aFase 2: aggiungere un codice.

  2. Esegui il comando yum update per (Amazon Linux) o apt update per (Ubuntu Server) per verificare che siano installati gli aggiornamenti di sicurezza e le correzioni dei bug più recenti.

    Per Amazon Linux 2 e Amazon Linux:

    sudo yum -y update

    Per Ubuntu Server:

    sudo apt update
  3. Installa PHP eseguendo il installcomando.

    Per Amazon Linux 2:

    sudo amazon-linux-extras install -y php7.2

    Per Amazon Linux:

    sudo yum -y install php72
    Nota

    È possibile visualizzare la versione di Amazon Linux con il comando seguente:

    cat /etc/system-release

    Per Ubuntu Server:

    sudo apt install -y php php-xml

    Per ulteriori informazioni, vedere Installazione e configurazione sul PHP sito Web.

Fase 2: aggiungere un codice

In AWS Cloud9 IDE, crea un file con questo contenuto e salva il file con il nomehello.php. (Per creare un file, nella barra dei menu scegli File, New File (Nuovo file). Per salvare il file, scegli File, Save (Salva), digita hello.php in Filename (Nome file), quindi scegli Save (Salva)).

<?php print('Hello, World!'); print("\nThe sum of 2 and 3 is 5."); $sum = (int)$argv[1] + (int)$argv[2]; print("\nThe sum of $argv[1] and $argv[2] is $sum."); ?>
Nota

Il codice precedente non si basa su alcun file esterno. Tuttavia, se includi o richiedi altri PHP file nel tuo file e desideri utilizzare tali file AWS Cloud9 per completare il codice durante la digitazione, attiva l'impostazione Project, PHP Support, Enable PHP code completion in Preferenze, quindi aggiungi i percorsi di tali file all'impostazione Project, PHP Support, PHP Completion Include Paths. Per visualizzare e modificare le preferenze, seleziona AWS Cloud9, Preferences (Preferenze) nella barra dei menu.

Fase 3: eseguire il codice

  1. Nella barra dei menu AWS Cloud9 IDE, scegli Esegui, Esegui configurazioni, Nuova configurazione di esecuzione.

  2. Nella scheda [Nuovo] - Idle, scegli Runner: Auto, quindi scegli PHP(cli).

  3. Per Command (Comando), digitare hello.php 5 9. Nel codice, 5 rappresenta $argv[1], mentre 9 rappresenta $argv[2]. ($argv[0] rappresenta il nome del file (hello.php).)

  4. Seleziona il pulsante Run (Esegui) e confronta gli output.

    Hello, World! The sum of 2 and 3 is 5. The sum of 5 and 9 is 14.
Risultato dell'esecuzione del codice in PHP AWS Cloud9 IDE

Fase 4: Installare e configurare il AWS SDK for PHP

Puoi migliorare questo esempio per utilizzare il bucket Amazon S3, AWS SDK for PHP elencare i bucket disponibili e quindi eliminare il bucket appena creato.

In questa fase, installi e configuri il AWS SDK for PHP, che fornisce un modo conveniente per interagire con AWS servizi come Amazon S3, dal tuo PHP codice. Prima di poter installare AWS SDK for PHP, è necessario installare Composer. Dopo aver installato AWS SDK for PHP, è necessario configurare la gestione delle credenziali nel proprio ambiente. Queste credenziali sono AWS SDK for PHP necessarie per interagire con AWS i servizi.

Per installare Composer

Eseguite il curlcomando con le opzioni silent (-s) e show error (-S), reindirizzando il programma di installazione di Composer in un file PHP archive (PHAR), denominato per convenzione. composer.phar

curl -sS https://getcomposer.org/installer | php

Per installare il AWS SDK for PHP

Per Ubuntu Server, installa ulteriori pacchetti che Composer necessita per installare l' AWS SDK for PHP.

sudo apt install -y php-xml php-curl

Per Amazon Linux o Ubuntu Server, utilizza il comando php per eseguire il programma di installazione di Composer e installare AWS SDK for PHP.

php composer.phar require aws/aws-sdk-php

Questo comando crea diverse cartelle e file nell'ambiente. Il file principale che utilizzerai è autoload.php, che si trova nella cartella vendor dell'ambiente.

Nota

Dopo l'installazione, Composer potrebbe suggerire l'installazione di ulteriori dipendenze. A questo proposito puoi utilizzare un comando come il seguente, specificando l'elenco delle dipendenze da installare. Ad esempio, il comando seguente indica a Composer di installare il seguente elenco di dipendenze.

php composer.phar require psr/log ext-curl doctrine/cache aws/aws-php-sns-message-validator

Per ulteriori informazioni, consulta Installazione in Guida per gli sviluppatori di AWS SDK for PHP .

Per configurare la gestione delle credenziali nell'ambiente

Ogni volta che si utilizza il AWS SDK for PHP per chiamare un AWS servizio, è necessario fornire un set di credenziali con la chiamata. Queste credenziali determinano se AWS SDK for PHP dispone delle autorizzazioni appropriate per effettuare quella chiamata. Se le credenziali non coprono le autorizzazioni appropriate, la chiamata fallirà.

In questa fase si archiviano le credenziali all'interno dell'ambiente A questo proposito, segui le istruzioni riportate in Chiamata Servizi AWS da un ambiente in AWS Cloud9, quindi torna a questo argomento.

Per ulteriori informazioni, consulta la sezione "Creazione di un client" di Utilizzo di base in Guida per gli sviluppatori di AWS SDK for PHP .

Fase 5: Aggiungere codice AWS SDK

In questa fase si aggiunge altro codice, questa volta per interagire con Amazon S3 e creare un bucket, elencare i bucket disponibili ed eliminare il bucket appena creato. Potrai eseguire questo codice più tardi.

Nel AWS Cloud9 IDE, crea un file con questo contenuto e salva il file con il nomes3.php.

<?php require './vendor/autoload.php'; if ($argc < 4) { exit("Usage: php s3.php <the time zone> <the bucket name> <the AWS Region to use>\n" . "Example: php s3.php America/Los_Angeles my-test-bucket us-east-2"); } $timeZone = $argv[1]; $bucketName = $argv[2]; $region = $argv[3]; date_default_timezone_set($timeZone); $s3 = new Aws\S3\S3Client([ 'region' => $region, 'version' => '2006-03-01' ]); # Lists all of your available buckets in this AWS Region. function listMyBuckets($s3) { print("\nMy buckets now are:\n"); $promise = $s3->listBucketsAsync(); $result = $promise->wait(); foreach ($result['Buckets'] as $bucket) { print("\n"); print($bucket['Name']); } } listMyBuckets($s3); # Create a new bucket. print("\n\nCreating a new bucket named '$bucketName'...\n"); try { $promise = $s3->createBucketAsync([ 'Bucket' => $bucketName, 'CreateBucketConfiguration' => [ 'LocationConstraint' => $region ] ]); $promise->wait(); } catch (Exception $e) { if ($e->getCode() == 'BucketAlreadyExists') { exit("\nCannot create the bucket. " . "A bucket with the name '$bucketName' already exists. Exiting."); } } listMyBuckets($s3); # Delete the bucket you just created. print("\n\nDeleting the bucket named '$bucketName'...\n"); $promise = $s3->deleteBucketAsync([ 'Bucket' => $bucketName ]); $promise->wait(); listMyBuckets($s3); ?>

Passaggio 6: Esegui il AWS SDK codice

  1. Nella barra dei menu AWS Cloud9 IDE, scegli Esegui, Esegui configurazioni, Nuova configurazione di esecuzione.

  2. Nella scheda [Nuovo] - Idle, scegli Runner: Auto, quindi scegli PHP(cli).

  3. In Command (Comando), digita s3.php America/Los_Angeles my-test-bucket us-east-2, dove:

    • America/Los_Angeles è l'ID del tuo fuso orario predefinito. Per ulteriori informazioniIDs, consulta l'Elenco dei fusi orari supportati sul sito Web. PHP

    • my-test-bucket è il nome del bucket che vuoi creare e quindi eliminare.

      Nota

      I nomi dei bucket Amazon S3 devono essere univoci per tutti gli account, AWS non solo per il tuo account. AWS

    • us-east-2è l'ID della AWS regione in cui desideri creare il bucket. Per ulteriori informazioniIDs, consulta Amazon Simple Storage Service (Amazon S3) nel. Riferimenti generali di Amazon Web Services

  4. Seleziona il pulsante Run (Esegui) e confronta gli output.

    My buckets now are: Creating a new bucket named 'my-test-bucket'... My buckets now are: my-test-bucket Deleting the bucket named 'my-test-bucket'... My buckets now are:

Fase 7: pulire

Per evitare addebiti continui AWS sul tuo account dopo aver utilizzato questo esempio, devi eliminare l'ambiente. Per istruzioni, consulta Eliminazione di un ambiente in AWS Cloud9.

Risoluzione dei problemi con PHP runner for AWS Cloud9

In caso di problemi con il PHP CLI runner, è necessario assicurarsi che il runner sia impostato su PHP e che la modalità debugger sia abilitata.