网站传输后PHP脚本中的错误5

时间:2018-05-23 12:22:17

标签: php json curl migration hosting

我不知道发生了什么,但由于我们需要更多的速度/带宽,我将我们的wordpress网站上的大量自定义php / curl / javascript / jquery代码转移到其他托管服务提供商。

我自己移动了网站,一切正常,除了我们在wordpress环境中编写的自定义应用程序。

当我们尝试提交表单时,我们会在控制台中收到以下错误:

POST https://verifiedcryptogroup.com/member-area/api/create_user.php 500 ()
send @ jquery.js?ver=1.12.4:4
ajax @ jquery.js?ver=1.12.4:4
(anonymous) @ (index):2599
dispatch @ jquery.js?ver=1.12.4:3
r.handle @ jquery.js?ver=1.12.4:3

如您所见,我们得到内部服务器错误(500),仅此而已。

这是托管服务提供商的问题吗?

以下是' create_user.php'

的代码
<?php
include('functions.php');

// First we get all the information from the fields we need to pass on to 
swiftdill.
$type       = $_POST['type'];
$email      = $_POST['email'];
$first_name = $_POST['first_name'];
$last_name  = $_POST['last_name'];
$title      = $_POST['title'];
$middle_name    = $_POST['middle_name'];
$maiden_name    = $_POST['maiden_name'];
$dob            = $_POST['dob'];
$gender         = $_POST['gender'];
$mobile         = $_POST['mobile'];
$nationality    = $_POST['nationality'];
$birth_country  = $_POST['birth_country'];

$line       = $_POST['line'];
$extra_line = $_POST['extra_line'];
$city       = $_POST['city'];
$state_or_province = $_POST['state_or_province'];
$postal_code= $_POST['postal_code'];
$country    = $_POST['country'];

$wp_id      = $_POST['wp_id'];

if(isset($type) && $type != '') {

$fields = array(
    'type'          => $type,
    'email'         => $email,
    'first_name'    => $first_name,
    'last_name'     => $last_name,
    'title'         => $title,
    'middle_name'   => $middle_name,
    'maiden_name'   => $maiden_name,
    'dob'           => $dob,
    'gender'        => $gender,
    'mobile'        => $mobile,
    'nationality'   => $nationality,
    'birth_country' => $birth_country,
    'addresses'     => [ array(
                        'type'      => 'PRIMARY',
                        'line'      => $line,
                        'extra_line'=> $extra_line,
                        'city'      => $city,
                        'state_or_province' => $state_or_province,
                        'postal_code'=> $postal_code,
                        'country'   => $country
    )]
);
$fields = json_encode($fields);

// Get the access token and make sure it's not empty
$newToken = getAccessToken($api_url);

// Check if the token is empty. If so: give a message and stop the script.
if (empty($newToken)) {
    echo '{ "error": "The token is invalid!" }';
    return;
} else {
    $curl = curl_init();
    curl_setopt_array($curl, array(
        CURLOPT_URL => $api_url . "customers",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_ENCODING => "",
        CURLOPT_MAXREDIRS => 10,
        CURLOPT_TIMEOUT => 30,
        CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
        CURLOPT_CUSTOMREQUEST => "POST",
        CURLOPT_POSTFIELDS => $fields,
        CURLOPT_HTTPHEADER => array(
            "Authorization: Bearer $newToken",
            "Cache-Control: no-cache",
            "Content-Type: application/json",
            "Postman-Token: xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx"
        )
    ));

    $response = curl_exec($curl);
    $err = curl_error($curl);

    curl_close($curl);

    if ($err) {
        echo '{ "error": "cURL Error #:'  . $err . '" }';
    } else {
        $result = json_decode($response, true);
        if($result['id'] != '' && $result['email'] != '') {
            // De zojuist aangemaakte gebruiker wordt toegevoegd aan de eigen database
            $addCustomerId = addCustomerId($db, $wp_id, $result['id']);
            if($addCustomerId == 'success') {
                echo '{ "message": "success" }';
            } else {
                echo $response;
            }
        } else {
            echo $response;
        }
    }
}
}     else {
    echo '{ "error": "Type incorrect" }';
}

1 个答案:

答案 0 :(得分:0)

  

修复自己网站上的500个内部服务器错误问题A 500   您自己网站上的内部服务器错误需要完全   不同的行动方针。如上所述,大多数500个错误都是   服务器端错误,这意味着它可能是你的问题,如果它的话   你的网站。

     

有很多原因导致您的网站可能出现500错误   对于您的用户,但这些是最常见的:

     

权限错误。在大多数情况下,500内部服务器错误到期   对一个或多个文件或文件夹的不正确权限。在大多数情况下   在这些情况下,PHP和CGI脚本的错误权限是   怪。这些通常应设置为0755(-rwxr-xr-x)。一个PHP   超时。如果您的脚本连接到外部资源和那些   资源超时,可能会发生HTTP 500错误。超时规则,或   在脚本中更好的错误处理,如果这是原因,应该会有所帮助   500错误。 .htaccess中的编码错误。虽然不常见,但是   一定要检查您网站的.htaccess文件是否结构合理。   如果您正在运行WordPress,Joomla或其他内容管理或   CMS系统,请务必搜索其支持中心以获取更具体的信息   帮助解决500内部服务器错误。

     

如果您没有使用现成的内容管理工具,那么您的网络就是如此   主机提供商,如InMotion,Dreamhost,1&amp; 1等,可能有   某些500错误帮助可能更具体地适用于您的情况。

来源: https://www.lifewire.com/500-internal-server-error-explained-2622938