Я хотел бы использовать порт 443 в сценарии PHP, но, похоже, у меня нет привилегий для этого. Это ошибка php, которая возникает:
Could not bind socket : [13] Permission denied
это простой код PHP:
<?php
require_once($_SERVER["DOCUMENT_ROOT"] . "/scripts/php/outputWhile.php");
$ip = "0.0.0.0";
$port = "443";
error_reporting(~E_WARNING);
if(!($sock = socket_create(AF_INET, SOCK_DGRAM, 0))){
$errorcode = socket_last_error();
$errormsg = socket_strerror($errorcode);
die("Couldn't create socket: [$errorcode] $errormsg \n");
}
// Bind the source address
if( !socket_bind($sock, $ip , $port) ){
$errorcode = socket_last_error();
$errormsg = socket_strerror($errorcode);
die("Could not bind socket : [$errorcode] $errormsg \n");
}
while(true){
$messageRecieved = "";
$r = socket_recvfrom($sock, $messageRecieved, 512, 0, $remote_ip, $remote_port);
echo $messageRecieved . "<br>";
}
?>
Как я могу дать привилегии root для этого скрипта? Я полагаю, я должен добавить пользователя в корневую группу, но .. какой пользователь?
Я использую Amazon AWS VPS с дистрибутивом Red Hat 7.2.1-2, с Apache и LiteSpeed Web Server.
Спасибо, Дэвид.