# Права доступа к файлам (Прямое обращение)
location ~* ^/file/(attachment|pic/(photo|poll|video))/(.*)\.(jpg|jpeg|gif|png)$ {
# Проверка наличия файла до перехода на file.php
set $file "$document_root/file/$1/$3.$4";
if (!-f $file) {
return 404;
}
# Проверка реферера
valid_referers server_names ~.site$;
if ($invalid_referer) {
# Переход к обработке PHP-скриптом
rewrite ^/file/(.*)$ /file.php?file=$1 last;
}
}
# End: Права доступа к файлам (Прямое обращение)
# Права доступа к файлам (Прямое обращение)
location ~* ^/file/(attachment|pic/(photo|poll|video))/(.*)\.(jpg|jpeg|gif|png)$ {
# Проверка наличия файла до перехода на file.php
set $file "$document_root/file/$1/$3.$4";
if (!-f $file) {
return 404;
}
# Проверка реферера
valid_referers blocked server_names ~.site$;
if ($invalid_referer) {
# Переход к обработке PHP-скриптом
rewrite ^/file/(.*)$ /file.php?file=$1 last;
}
}
# End: Права доступа к файлам (Прямое обращение)valid_referers server_names ~.site$;
if ($invalid_referer) {
# Если реферер неверный или отсутствующий, переадресовываем на file.php
rewrite ^/file/(.*)$ /file.php?file=$1 last;
}
# Проверка заголовка Referer
valid_referers none blocked server_names ~.site$;
# Если Referer не соответствует домену, возвращаем 403
if ($invalid_referer) {
return 403;
}
Тот же класс app вы как загружаете?
<?php
class thing extends app
private static $object = [];
public static function library($class)
{
if (empty(self::$object[$class]))
{
$path = 'process/class/';
if (str_contains($class, '.'))
{
$part = explode('.', $class);
$class = array_pop($part);
$path .= implode('/', $part) . '/';
}
include_once (APP_DIR . $path . $class . '.php');
self::$object[$class] = new $class;
}
return self::$object[$class];
}app::library('className')->fun($param);
spl_autoload_register(function($class)
{
include_once ('classe/' . $class . '.php);
$class = new class;
});
Спасибо за поддержку!