500 es generalmente "error interno del servidor".
Si obtiene 500 de regreso de su llamada API de Facebook, entonces podría ser algo malo en su extremo.
Por otra parte, sus solicitudes de HTTP pueden estar un poco fuera, y el servidor de fb va "um, ¿qué?" y le envía 500 porque no puede explicar el problema.
Recuerdo que hace varios años la aplicación de fb api principalmente códigos de "error desconocido" cuando algo salió mal - no han tocado esa API desde entonces. Con suerte no te encontrarás con el mismo problema.
Para resolver realmente el problema, tendrá que o bien:
A) capturar su solicitud y la respuesta HTTP, incluyendo las cabeceras, lo comparan con una llamada a la API éxito, y hacer cambios si es necesario. B) capture cualquier excepción lanzada por el SDK de Facebook.
La opción A siempre funcionará, pero la opción B es quizás más rápida.
Salida: php exceptions
EDIT: a ver lo que está causando un error 500 en su servidor, busque en su registros de errores de apache.
también se puede utilizar
error_reporting(E_ALL);
para descartar cualquier error de php.
revise el registro de errores del servidor. (si tiene Apache, tiene un registro de errores) –