Reputation: 47
When running a PHP file with autoloading I receive the following errors:
Fatal error: Uncaught exception 'UnexpectedValueException' with message 'The stream or file "app.log" could not be opened: failed to open stream: Permission denied' in /Users/name/Website2/BuildingWebsiteswithPHP2/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:87 Stack trace: #0 /Users/name/Website2/BuildingWebsiteswithPHP2/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37): Monolog\Handler\StreamHandler->write(Array) #1 /Users/name/Website2/BuildingWebsiteswithPHP2/vendor/monolog/monolog/src/Monolog/Logger.php(289): Monolog\Handler\AbstractProcessingHandler->handle(Array) #2 /Users/name/Website2/BuildingWebsiteswithPHP2/vendor/monolog/monolog/src/Monolog/Logger.php(341): Monolog\Logger->addRecord(300, 'Foo', Array) #3 /Users/name/Website2/BuildingWebsiteswithPHP2/index.php(8): Monolog\Logger->addWarning('Foo') #4 {main} thrown in /Users/name/Website2/BuildingWebsiteswithPHP2/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php on line 87
Here is my index.php file:
<?php
require __DIR__ . '/vendor/autoload.php';
$log = new Monolog\Logger('name');
$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));
$log->addWarning('Foo');
echo "Hello world!";
I have composer installed in my project folder, BuldingWebsiteswithPHP2. Will this instead need to be installed in XAMPP?
Upvotes: 0
Views: 334
Reputation: 256
The php process (usually the web server) doesn't have permission to access/write to app.log.
Upvotes: 0