wiki.techinc.nl/img_auth.php
daniel 12aa2374ab filerepo: extract AuthenticatedFileEntryPoint from img_auth.php
The idea is that all entry points should share the code in the
MediaWikiEntryPoint base class. This change just moves code from
the file scope into a class, without any structural changes.

Bug: T354216
Change-Id: Ie2e827d30a070bcc63bdce56891c3aa0a4dacddd
2024-05-16 13:22:00 +02:00

57 lines
2.2 KiB
PHP

<?php
/**
* The web entry point for serving non-public images to logged-in users.
*
* To use this, see https://www.mediawiki.org/wiki/Manual:Image_authorization
*
* - Set $wgUploadDirectory to a non-public directory (not web accessible)
* - Set $wgUploadPath to point to this file
*
* Optional Parameters
*
* - Set $wgImgAuthDetails = true if you want the reason the access was denied messages to
* be displayed instead of just the 403 error (doesn't work on IE anyway),
* otherwise it will only appear in error logs
*
* For security reasons, you usually don't want your user to know *why* access was denied,
* just that it was. If you want to change this, you can set $wgImgAuthDetails to 'true'
* in localsettings.php and it will give the user the reason why access was denied.
*
* Your server needs to support REQUEST_URI or PATH_INFO; CGI-based
* configurations sometimes don't.
*
* @see MediaWiki\FileRepo\AuthenticatedFileEntryPoint The implementation.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
* http://www.gnu.org/copyleft/gpl.html
*
* @file
* @ingroup entrypoint
*/
use MediaWiki\Context\RequestContext;
use MediaWiki\EntryPointEnvironment;
use MediaWiki\FileRepo\AuthenticatedFileEntryPoint;
use MediaWiki\MediaWikiServices;
define( 'MW_NO_OUTPUT_COMPRESSION', 1 );
define( 'MW_ENTRY_POINT', 'img_auth' );
require __DIR__ . '/includes/WebStart.php';
( new AuthenticatedFileEntryPoint(
RequestContext::getMain(),
new EntryPointEnvironment(),
MediaWikiServices::getInstance()
) )->run();