Quelqu'un peut-il dire une idée de créer une requête pour décrire les régions dans aws ec2.I confus dans & authparameters .En outre, s'il vous plaît donner un programme pour générer la signature.amazon ec2 requête faisant
Répondre
Après une recherche de longue date que j'ai trouvé un programme qui va créer une requête et renvoie la réponse de AWS..It fonctionne très bien ..
Programme
<?php
$key='Your aws key';
$pwd='Your AWS secret key';
// See docs ://docs.amazonwebservices.com/AWSEC2/latest/APIReference/------->Actions---->Describe Regions
//for making a request to the aws
$params = array(
'Action' => 'DescribeAvailabilityZones',
'AWSAccessKeyId' => $key,
'Timestamp' => gmdate('Y-m-d\TH:i:s\Z'),
'Version' => '2008-05-05',
'ZoneName.0' => 'us-east-1a',
'ZoneName.1' => 'us-east-1b',
'ZoneName.2' => 'us-east-1c',
'SignatureVersion' => 2,
'SignatureMethod' => 'HmacSHA256'
);
uksort($params, 'strnatcmp');
$qstr = '';
foreach ($params as $key => $val) {
$qstr .= "&{$key}=".rawurlencode($val);
}
$qstr = substr($qstr, 1);
// Signature Version 2
$str = "GET\n"
. "ec2.amazonaws.com\n"
. "/\n"
. $qstr;
$params['Signature'] = base64_encode(hash_hmac('sha256', $str, $pwd, true)); // Generating a base64-encoded RFC
//2104-compliant HMAC-SHA256
$req = 'https://ec2.amazonaws.com/?' . http_build_query( $params); // encoded query string
echo '<a href="'.$req.'">XML</a><p>';//For Navigating or creating a request.
?>
Vous devriez probablement utiliser le AWS SDK for PHP à gérer ce genre de choses pour vous; ça rendra votre code plus agréable, ils sont beaucoup moins susceptibles de contenir des bugs, et cela vous fera gagner du temps à long terme.
La réponse ici par 'prathyush' est une information très pratique. J'ai cherché pendant un moment maintenant des informations sur la façon d'exécuter une instance sur ec2 via une requête http avec php. Ce peu de code php peut être adapté pour faire juste cela et plus encore!
Par exemple remplacer la section $ params avec:
$ params = array (
'Action' => 'RunInstances', 'ImageID' => 'ami-f0f61599', « Placement.AvailabilityZone '=> us-east-1a', 'InstanceType' => 'm1.large', 'MinCount' => '1', 'MaxCount' => '1', 'KeyName' => ' 'key ', ' AWSAccessKeyId '=> $ clé, ' Horodatage '=> gmdate (' Ymd \ TH: i: s \ Z '), ' Version '=>' 2008-05-05 ',
'SignatureVersion' => 2,
'SignatureMethod' => 'HmacSHA256' ); N'oubliez pas de remplacer la zone de disponibilité ci-dessus par celle dont vous avez besoin. Pour moi, je l'ai changé pour eu-west-1a.
Également changer ec2.amazonaws.com à eu-west-1.ec2.amazonaws.com dans les deux endroits, il apparaît dans le bit du bas du code.
- 1. mise hostname archlinux (Amazon EC2)
- 2. amazon ec2 + msmq
- 3. Amazon EC2 Utilisation
- 4. Déploiement sur Amazon EC2
- 5. Fichiers locaux Amazon EC2
- 6. Amazon EC2 et s3
- 7. Amazon EC2 latency
- 8. Snapshots sur Amazon EC2
- 9. Métadonnées d'instance Amazon EC2
- 10. Amazon EC2 et jbossws
- 11. Amazon EC2 Root login
- 12. Amazon EC2: Jetty Unaccessible
- 13. EntityFramework avec Amazon EC2
- 14. Hébergement cloud Amazon EC2
- 15. Prototypage pour Amazon EC2
- 16. Amazon EC2 ssh timeout
- 17. Amazon EC2 instances réservées
- 18. Amazon EC2 keypair recovery
- 19. EC2 Amazon TCPS question
- 20. Amazon EC2 Development Stack
- 21. Instance Amazon EC2
- 22. Amazon EC2: Comment installer glassfish dans EC2?
- 23. Enregistrement SPF pour amazon ec2
- 24. xsendfile sur Amazon EC2 AMI
- 25. BitNami DjangoStack sur Amazon EC2
- 26. Amazon AWS Ec2 + Elastic IP
- 27. Rsync à l'instance Amazon Ec2
- 28. Tuning JVM sur Amazon EC2
- 29. Node.js installer sur Amazon EC2
vous pouvez marquer votre question en sélectionnant uptick sur votre propre réponse. – Nishant