Ошибка сервера: `GET http://127.0.0.1:8081` привел к ответу` 503 Service Unavailable`: - PullRequest
0 голосов
/ 15 мая 2019

Я пытаюсь создать движок рекоммендации для своего веб-сайта. Я использую PHP с Laravel для бэк-энда. Я хочу построить движок рекоммендации, поэтому я решил использовать для него Nodejs .....

Движок рекоммендации nodejs использует GER и выдает рекомендации. Когда я перехожу к localhost:8081 в моем браузере Я получаю то, что ожидаю отлично . Мой сайт работает на localhost: 8000, поэтому мне нужно ввести рекомендации с localhost: 8081 на `localhost: 8000 /reccomendations. Для этого я решил использовать Guzzle .

Это мой контроллер (часть) в laravel:

//RECCOMMENDATION SYSTEM

    public function showReccPosts(){
        $person='alice';

        //The URL you want to send a cURL proxy request to.
        $client = new Client();
        $request = $client->get('http://127.0.0.1:8081', [
            'config' => [
                'curl' => [
                    'CURLOPT_PROXY' => 'asoju.unilag.edu.ng:3128',
                    'CURLOPT_HTTPPROXYTUNNEL' => 1,
                ]
               ]
            ]);
        $result = $request->getBody()->getContents();

       return view('reccomended.index',compact('result'));

    }

Если я попробую его с внешним веб-сайтом, таким как google.com, он будет работать отлично. Но если я попробую это с 127.0.0.1:8000, это выдаст мне эту ошибку:

GuzzleHttp \ Exception \ ServerException (503)
Server error: `GET http://127.0.0.1:8081` resulted in a `503 Service Unavailable` response: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html><head> <meta type="copy (truncated...)

Понятия не имею, что происходит. 503 - это общее сообщение об ошибке.

1 Ответ

0 голосов
/ 18 мая 2019

Мне пришлось сказать curl, чтобы он игнорировал прокси, как в:

        // Get cURL resource
$curl = curl_init();
// Set some options - we are passing in a useragent too here
curl_setopt_array($curl, [
    CURLOPT_URL => "http://localhost:8080/?name=$name",
    CURLOPT_PROXY => '',//IGNORE THE PROXY THAT IS NORMALLY USED FOR INTERNET ACCESS
]);
// Send the request & save response to $resp
$results = curl_exec($curl);
// Close request to clear up some resources
curl_close($curl);
...