ホームページ バックエンド開発 PHPチュートリアル 一个很蛋疼的exec有关问题,求大侠解决…

一个很蛋疼的exec有关问题,求大侠解决…

Jun 13, 2016 am 10:17 AM
apache exec var

一个很蛋疼的exec问题,求大侠解决……
我做一个在线编程的一个页面,要用到系统调用exec来取得用户写的程序的运行后的输出值,写的脚本基本如下:

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->$command = "/var/program/userprogram";exec($command, $data);print_r($data);
ログイン後にコピー

(/var/program/)不是web的根目录
这个是经过简化的,我su 到apache用户后在命令行下执行php test.php能够成功的输出程序的执行数据,但是在WEB下去访问这个文件,却很奇怪的出现Array ( [0] => sh: /var/program/userprogram: Permission denied ) 。我很纳闷,同样的代码,在我自己的电脑上是没有问题的,不知道是不是因为有什么安全配置阻止了在其他目录下执行非系统命令的权限。另外,我把那个userprogram文件放到web根目录下,运行也是没问题的。。。

------解决方案--------------------
chmod 777 /var/program/userprogram 命令行下改改看
------解决方案--------------------
在linux 下执行 用的是执行者的权限
在apache下用的是apache 进程帐号的权限
------解决方案--------------------
用exec的方式很值得怀疑。做这种东西,估计要通过c,sokcet之类的来辅助以下。
------解决方案--------------------
echo get_current_user();

先看看当前运行的用户是什么
------解决方案--------------------
权限问题 apache帐号的权限不能执行那个程序
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

C++ はフロントエンドですか、それともバックエンドですか? C++ はフロントエンドですか、それともバックエンドですか? Apr 22, 2024 pm 05:33 PM

C++ はフロントエンドですか、それともバックエンドですか?

PHP フレームワークのパフォーマンス比較: 速度と効率の究極の対決 PHP フレームワークのパフォーマンス比較: 速度と効率の究極の対決 Apr 30, 2024 pm 12:27 PM

PHP フレームワークのパフォーマンス比較: 速度と効率の究極の対決

HTMLファイルからURLを生成する方法 HTMLファイルからURLを生成する方法 Apr 21, 2024 pm 12:57 PM

HTMLファイルからURLを生成する方法

golang 関数の同時実行制御とサードパーティ ライブラリの統合と拡張 golang 関数の同時実行制御とサードパーティ ライブラリの統合と拡張 Apr 25, 2024 am 09:27 AM

golang 関数の同時実行制御とサードパーティ ライブラリの統合と拡張

Java 同時プログラミングで同時実行テストとデバッグを実行するにはどうすればよいですか? Java 同時プログラミングで同時実行テストとデバッグを実行するにはどうすればよいですか? May 09, 2024 am 09:33 AM

Java 同時プログラミングで同時実行テストとデバッグを実行するにはどうすればよいですか?

回避モジュールは、アプリケーション層の DOS 攻撃から Web サイトを保護します。 回避モジュールは、アプリケーション層の DOS 攻撃から Web サイトを保護します。 Apr 30, 2024 pm 05:34 PM

回避モジュールは、アプリケーション層の DOS 攻撃から Web サイトを保護します。

Eclipseにサーバーを追加する方法 Eclipseにサーバーを追加する方法 May 05, 2024 pm 07:27 PM

Eclipseにサーバーを追加する方法

58 ポートレート プラットフォームの構築におけるアルゴリズムの適用 58 ポートレート プラットフォームの構築におけるアルゴリズムの適用 May 09, 2024 am 09:01 AM

58 ポートレート プラットフォームの構築におけるアルゴリズムの適用

See all articles