Comment envoyer HTTPS poteaux à l'aide de php
Je suis la mise en place d'une coutume solution e-commerce, et le système de paiement que j'utilise m'oblige à envoyer HTTPS POSTES.
Comment puis-je faire cela à l'aide de php et CURL?), est-ce différent de l'envoi http postes?
Mise à JOUR:
Merci pour vos réponses, elles nous ont été très utiles. Je suppose que j'ai besoin d'acheter un certificat SSL pour que cela fonctionne, et je vais évidemment faire pour le final du site, mais est-il de toute façon pour moi de le tester sans en acheter une?
Merci, Nico
Vous avez juste besoin d'un certificat si quelqu'un veut se connecter à votre serveur, si vous souhaitez vous connecter à un autre serveur.
Vous n'avez pas besoin d'acheter un certificat si votre connexion vous propres serveurs. l'autonomie de la signature de du cert sont aussi bonne que les autres, aussi longtemps que vous êtes sûr de les deux extrémités du canal de communication. Aussi, si votre connecter à leur serveur en https ils ont pour obtenir le cert-vous pas. vous avez seulement besoin d'en acheter un si le public de la connexion à un serveur (via le web ou de l'API)
Vous n'avez pas besoin d'acheter un certificat si votre connexion vous propres serveurs. l'autonomie de la signature de du cert sont aussi bonne que les autres, aussi longtemps que vous êtes sûr de les deux extrémités du canal de communication. Aussi, si votre connecter à leur serveur en https ils ont pour obtenir le cert-vous pas. vous avez seulement besoin d'en acheter un si le public de la connexion à un serveur (via le web ou de l'API)
OriginalL'auteur Nico Burns | 2009-07-20
Vous devez vous connecter pour publier un commentaire.
PHP/Curl gérer la demande https très bien. Ce que vous devez faire, surtout quand il va à l'encontre d'un serveur de dev, c'est de transformer CURLOPT_SSL_VERIFYPEER off. C'est parce qu'un serveur de dev peut être auto-signé et de l'échec de la vérification de test.
probablement, il doit permettre la vérification SSL, et de créer le certificat fichier PEM
+1 Option CURLOPT_SSL_VERIFYPEER sur ma machine locale m'a sauvé quelques heures, car sans elle, le serveur ne voulais pas accepter mon certificat auto-signé
OriginalL'auteur
Vous pouvez également utiliser le flux de l'api et http/https options de contexte
Vous avez encore besoin d'une extension qui fournit le cryptage SSL. Qui peut soit être php_openssl ou (si compilé de cette façon) php_curl.
'https://...'
Oh, désolé. J'aurais du précisé que: l'ajout de paramètres post fonctionne de la même pour http:// et https://
Vous ne signifie pas qu'elle, mais je suggère que vous modifier pour
https://
dans la dernière ligne à plus de répondre directement à la question d'origine. 🙂 Je me demandais si c'est tous vous avez besoin de changer, et a confirmé qu'il est, PHP 5.3.3.OriginalL'auteur VolkerK
Non, il n'y a pas beaucoup de différence. Curl n'a tout le nécessaire.
Voir les exemples dans la commentaires des utilisateurs sur les
curl_setopt
page de référence comment c'est fait.OriginalL'auteur Gumbo
Si vous êtes en utilisant curl, vous pouvez passer dans le paramètre-d pour que vos paramètres. Ce résultats en utilisant un HTTP post. Quelque chose comme
entraînerait un HTTP post http://foo.com avec les paramètres appropriés
cURL ferez bien par HTTPS.
OriginalL'auteur Rob Di Marco
Question similaire: POST à l'URL avec PHP et Poignée de Réponse
À l'aide de la solution retenue (Snoopy Classe PHP), vous pouvez faire quelque chose comme ce qui suit:
OriginalL'auteur Sampson