PHP使用root权限调用shell
PHP 调用 shell 时,有些时候会遇到权限问题,通过查看Apache日志可以发现如下的内容 rm: instrumentscli0.trace/form.template: Permission denied 原因是shell在执行这些语句时可能需要root权限,可以在脚本中的具体语句加上sudo ,比如 sudo rm xxx;当然
PHP调用shell时,有些时候会遇到权限问题,通过查看Apache日志可以发现如下的内容
rm: instrumentscli0.trace/form.template: Permission denied
原因是shell在执行这些语句时可能需要root权限,可以在脚本中的具体语句加上sudo ,比如 sudo rm xxx;当然最好是不要修改shell脚本,而是在php调用shell时,加上sudo ./xxx.sh
加上sudo后再次执行,发现第二个问题
sudo: no tty present and no askpass program specified
原因是执行sudo时需要一个终端来输入密码,解决方法是赋予Apache的执行用户root权限。
方法:修改visudo文件
命令如下
sudo visudo
在visudo文件中为Apache的执行用户分配权限,新增下面这一行
_www ALL=(ALL) NOPASSWD: ALL
赋予_www用户所有权限,并且不需要输入密码,这其中,第一项是Apache执行用户的名称,不同的版本可能不一样,有的是nobody,有的是daemon, 有的是_www。
可以通过查看Apache目录下的httpd.conf获悉具体用户,该文件有如下一段配置项
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User _www
Group _www
这里就是执行用户,出于安全考虑,最好把默认的用户名修改为自定义的用户,当然也可以不修改。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



In this chapter, we will understand the Environment Variables, General Configuration, Database Configuration and Email Configuration in CakePHP.

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

To work on file upload we are going to use the form helper. Here, is an example for file upload.

In this chapter, we are going to learn the following topics related to routing ?

Working with database in CakePHP is very easy. We will understand the CRUD (Create, Read, Update, Delete) operations in this chapter.

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

Validator can be created by adding the following two lines in the controller.
