![无法绑定套接字:权限被拒绝](https://linux22.com/image/1577425/%E6%97%A0%E6%B3%95%E7%BB%91%E5%AE%9A%E5%A5%97%E6%8E%A5%E5%AD%97%EF%BC%9A%E6%9D%83%E9%99%90%E8%A2%AB%E6%8B%92%E7%BB%9D.png)
我想在 PHP 脚本中使用端口 443,但似乎我没有权限这样做。这是发生的 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 权限?我想我应该将用户添加到 root 组,但是...哪个用户?
我正在使用带有 Red Hat 7.2.1-2 发行版、Apache 和 LiteSpeed Web Server 的 Amazon AWS VPS。
谢谢,达维德。