@Roman_Sr

Как запустить PHP от имени пользователя?

Мой PHP скрипт на хостинге заускается от имени apache, это приводит к тому, что папки и файлы котороые создаются имеют владельца как apache а не user. Я пытаюсь сменить на user при помощи метода chown, но выдается ошибка "Warning: chown(): Operation not permitted in /var/www/....."
$target_dir = "../../photo/" . $photo_a;
if(!file_exists($target_dir)) 
{  
    mkdir($target_dir, 0775, true);
} 
echo $target_dir;
chown($target_dir,"user");
$target_dir = $target_dir . "/" . basename($_FILES["file"]["name"]);
if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_dir)) {
    echo json_encode([
    	"message" => "The file ". basename( $_FILES["file"]["name"]). " has been uploaded.",
    	"status" => "OK",
	"userEmail" => $userId_a
    ]);
} else {
	echo json_encode([
		"message" => "Sorry, there was an error uploading your file.",
		"status" => "Error",
	   "userEmail" => $userId_a
	]);
  • Вопрос задан
  • 312 просмотров
Пригласить эксперта
Ответы на вопрос 1
Sanes
@Sanes
Сервер настройте по-человечески. От имени пользователя можно запустить в режимах:
PHP-FPM, Apache2 mpm-itk, Apache2 mod_ruid2, CGI/FastCGI и т.д.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы