php调用c++套接字函数导致权限被拒绝错误

标签 php c++ sockets permissions

我有一个 php 代码:

<?php
$res = "";
exec("./a.out>temp", $res);
print_r(error_get_last());
print_r($res);
?>

a.out 是一个创建套接字的简单 C++ 程序。当我从浏览器调用此 php 代码时,“临时”文件中会打印“权限被拒绝”错误。

我知道这是一个与apache用户权限相关的问题,但是如何解决呢?

注意:我已将 stderr 重定向到“temp”文件中,以便我可以看到问题所在。

谢谢。

最佳答案

也许“www”(或 apache)用户权限是问题所在。

另一个选项是套接字已经存在。 .

也许这是 SE linux 的问题(如果你使用的是 Linux)

/usr/sbin/setsebool httpd_can_network_connect=1

来源:http://www.rkrishardy.com/2009/12/permission-denied-13-when-opening-socket-in-php-apache/

顺便说一句,php 也可以做套接字的事情。 .

关于php调用c++套接字函数导致权限被拒绝错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5246816/

相关文章:

php - 在 Wordpress 中向 get_the_date 添加一天

c++ - 在模板类上重载运算符

c++ - main函数返回不会返回高位整数

php - 使用 laravel 验证检查唯一的日期/时间

PHP session 变量在表单操作中使用 PHP_SELF 进行 header 重定向时丢失

c# - 通过 TCP 在 C# 中发送数据包?

node.js - 使用 socket.io 和 webpack 构建 React 应用程序不起作用

java - Android:Outputstream.write - 问题

php - Laravel 5.3 - 内部重定向或修改请求中间件

c++ - 最小平均重量周期——直观解释