$ _GET бросает 403

У меня есть простое пользовательское приложение MVC, использующее $ _GET для анализа URL-адреса, и оно работает на моем dev-сервере, а также на нескольких различных веб-хостингах с использованием php 7.1 … но я пытаюсь использовать бесплатный хостинг ламп x10hosting и данные, передаваемые из $ _GET, поступают как 403 …

Я доказал, что это работает на других серверах, а также на моем собственном сервере разработки с этим

echo '<pre>', $route->path, $_GET['url'], '</pre>';

при переходе на URL HTTP: // приложение / администратор… эта строка в моем цикле дает мне то, что следует ожидать …

/admin
adminadmin

но на сервере X10 я получаю это

/403.shtml
admin403.shtml

Я попытался кодировать в base64 с помощью urlencode ($ _ GET), а также отключить mod_sec в .htaccess с

<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>

Ни одно из решений не сработало … Я почти уверен, что это проблема конфигурации сервера, но доступ в значительной степени ограничен .htaccess и php.ini …. Я некоторое время не касался php или apache и немного растерялся. .. любая помощь будет принята с благодарностью

0

Решение

Это звучит как проблема типа mod_security. И, как вы обнаружили, вы невозможно отключить mod_security на бесплатной платформе хостинга.

Я столкнулся с правилами mod_sec на нескольких общих хостах, которые просто блокируют запрос на основе определенных имен параметров (предположительно, блокируя общие попытки XSS). url это обычный. site Другой. Простое изменение имени параметра может быть все, что требуется.

«Бесплатные» хостинговые аккаунты всегда будут иметь некоторые ограничения. Если это единственное, что вас сдерживает, то вам повезло.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector