genealabs / laravel-appleseed
Prevent the pesky missing-favicon error log entries, and return 404 if they don't exist.
Fund package maintenance!
mikebronner
Requires
- php: >=5.5.9
- illuminate/support: ~5.1
This package is auto-updated.
Last update: 2024-10-29 04:53:00 UTC
README
Reasoning
Eliminate error and server log entries that get thrown by missing favicons, especially the apple-touch-icon.png errors.
Considerations
If you are seeing errors in your server logs, its for a reason: favicons are custom representations of your site, and its probably good to implemented them. This just provides a better user experience for the various devices and browsers that want them.
However, there are times when we just don't want to deal with this, and are spinning up in-house or small experimental projects that won't be used publicly like that. That's what this package is for. Simply add it via composer, and add middleware entry as describe below, and it will return 404s for the missing favicons without cluttering your logs.
Dependencies
- Your project should be running Laravel 5+.
Installation
- Install Laravel Appleseed via composer:
composer require genealabs/laravel-appleseed
- Add the middleware entry in
app/Http/Kernel.php
directly after the maintenance mode middleware:
/* protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, */ \GeneaLabs\LaravelAppleseed\Http\Middleware\FaviconInterceptor::class, /* [...] ]; */
Usage
That was it! It will inspect each route for favicon requests and handle it appropriately.
Credits
Jesse Leite (@jesseleite85) provided lots of ideas and input on making this happen. Thanks!