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
Argomenti
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.
-
In una sessione terminale in AWS Cloud9 IDE, verifica se PHP è già installato eseguendo il
php --version
comando. 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. -
Esegui il comando
yum update
per (Amazon Linux) oapt 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
-
Installa PHP eseguendo il
install
comando.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
-
Nella barra dei menu AWS Cloud9 IDE, scegli Esegui, Esegui configurazioni, Nuova configurazione di esecuzione.
-
Nella scheda [Nuovo] - Idle, scegli Runner: Auto, quindi scegli PHP(cli).
-
Per Command (Comando), digitare
hello.php 5 9
. Nel codice,5
rappresenta$argv[1]
, mentre9
rappresenta$argv[2]
. ($argv[0]
rappresenta il nome del file (hello.php
).) -
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.
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
Per installare Composer
Eseguite il curl
comando 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
-
Nella barra dei menu AWS Cloud9 IDE, scegli Esegui, Esegui configurazioni, Nuova configurazione di esecuzione.
-
Nella scheda [Nuovo] - Idle, scegli Runner: Auto, quindi scegli PHP(cli).
-
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 supportatisul 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
-
-
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.