Issue
So I've got Apache on web server running Fedora. I'm trying to write into the text file.
if(!empty($_POST['versionWrite'])){
$file = fopen(APP_DIR."/resources/version.txt", "w");
fwrite($file, $_POST['versionWrite'].PHP_EOL);
fclose($file);
}
And when I execute the code, I get this:
Warning: fopen(/var/www/spumprnagle/resources/version.txt): failed to open stream: Permission denied in /var/www/spumprnagle/head.php on line 28
Warning: fwrite() expects parameter 1 to be resource, boolean given in /var/www/spumprnagle/head.php on line 29
Warning: fclose() expects parameter 1 to be resource, boolean given in /var/www/spumprnagle/head.php on line 30
This happens in every script working with files. And I have no idea what shall I do to grant Apache permissions to edit files.
Thanks for your time :).
Solution
Problem: The apache user doesn't have the permission to write file.
Solution:
chown -R apache:apache path/to/directory
where apache is the default user for fedora and path/to/directory is the path of the directory containing the files with you want to write.
If you want to give the permission to a single file then omit -R
Answered By - prolific Answer Checked By - Dawn Plyler (WPSolving Volunteer)