RabbitMQ: Utilizzare PHP per connettersi a RabbitMQ

Questa documentazione fa parte della guida Guida introduttiva. Consulta la guida completa qui: Come utilizzare Stackhero per RabbitMQ.

Se lavorate con PHP, potete utilizzare la libreria php-amqplib per collegarvi alla vostra istanza RabbitMQ. Poiché Stackhero utilizza la cifratura TLS (SSL), è consigliato utilizzare AMQPSSLConnection:

use PhpAmqpLib\Connection\AMQPSSLConnection;

$connection = new AMQPSSLConnection(
  '<XXXXXX>.stackhero-network.com',
  <AMQP_PORT_TLS>,
  'admin',
  '<PASSWORD>',
  '/',
  array()
);

/**
 * @param \PhpAmqpLib\Connection\AbstractConnection $connection
 */
function shutdown($connection)
{
  $connection->close();
}

register_shutdown_function('shutdown', $connection);

A volte, la vostra connessione TLS potrebbe richiedere un certificato di Autorità di Certificazione (CA). Molti sistemi lo includono già, ma potete scaricarlo manualmente se necessario. Ecco come fare:

  1. Scaricate il certificato da https://letsencrypt.org/certs/isrgrootx1.pem e salvatelo sul vostro server.
  2. Poi, potete collegarvi tramite PHP utilizzando il certificato scaricato come segue:
$sslOptions = array(
  'cafile' => realpath(__DIR__ . '/isrgrootx1.pem'),
);

$connection = new AMQPSSLConnection(
  '<XXXXXX>.stackhero-network.com',
  <AMQP_PORT_TLS>,
  'admin',
  '<PASSWORD>',
  '/',
  $sslOptions
);