Я реализовал функцию, которая подключается к продавцу, используя библиотеку curl для Codeigniter http://codeigniter.com/wiki/Curl_library. Я закончил реализацию, и все работало отлично. Однако теперь мы перенесли приложение на локальный сервер. свежий монтаж:
Ubuntu Server 11.10
Php 3.5.6
Mysql 5.1
Apache 2
Я использую статическую конфигурацию Ip и могу подключиться к Интернету.
Используя терминал, я могу пинговать такие сайты, как Google, Yahoo и т. Д., Но я не могу пинговать www.veripayment.com. Я могу открыть сайт с других компьютеров в той же сети. Но мой сервер Ubuntu не может.
Пожалуйста, имейте в виду, что это работает на нашем сервере.
<?php
$post_str = "action=payment&business="
.urlencode($this->input->post('business'))
."&vericode=".urlencode($this->input->post('vericode'))
."&item_name=".urlencode($this->input->post('item_name'))
."&item_code=".urlencode($this->input->post('item_code'))
."&quantity=".urlencode($this->input->post('quantity'))
."&amount=".urlencode($this->input->post('amount'))
."&cc_type=".urlencode($this->input->post('cc_type'))
."&cc_number=".urlencode($this->input->post('cc_number'))
."&cc_expdate=".urlencode($this->input->post('cc_expdate_year')).urlencode($this->input->post('cc_expdate_month'))
."&cc_security_code=".urlencode($this->input->post('cc_security_code'))
."&shipment=".urlencode($this->input->post('shipment'))
."&first_name=".urlencode($this->input->post('first_name'))
."&last_name=".urlencode($this->input->post('last_name'))
."&address=".urlencode($this->input->post('address'))
."&city=".urlencode($this->input->post('city'))
."&state_or_province=".urlencode($this->input->post('state_or_province'))
."&zip_or_postal_code=".urlencode($this->input->post('zip_or_postal_code'))
."&country=".urlencode($this->input->post('country'))
."&shipping_address=".urlencode($this->input->post('shipping_address'))
."&shipping_city=".urlencode($this->input->post('shipping_city'))
."&shipping_state_or_province=".urlencode($this->input->post('shipping_state_or_province'))
."&shipping_zip_or_postal_code=".urlencode($this->input->post('shipping_zip_or_postal_code'))
."&shipping_country=".urlencode($this->input->post('shipping_country'))
."&phone=".urlencode($this->input->post('phone'))
."&email=".urlencode($this->input->post('email'))
."&ip_address=".urlencode($this->input->post('ip_address'))
."&website_unique_id=".urlencode($this->input->post('website_unique_id'));
// Send URL string via CURL
$backendUrl = "https://www.veripayment.com/integration/index.php";
$this->curl->create($backendUrl);
$this->curl->post($post_str);
$return = $this->curl->execute();
$result = array();
// Explode array where blanks are found
$resparray = explode(' ', $return);
if ($resparray)
{
// save results into an array
foreach ($resparray as $resp) {
$keyvalue = explode('=', $resp);
if(isset($keyvalue[1])){
$result[$keyvalue[0]] = str_replace('"', '', $keyvalue[1]);
}
}
}
return $result;
?>