12 / 17 / 2
Регистрация: 02.11.2015
Сообщений: 222
|
|
1 | |
Как правильно ограничить php скрипты виртуального хостинга в пределах директории сайта?16.02.2018, 02:15. Показов 1063. Ответов 12
На локальном компьютере установлена связка WAMP. Сайты разложены по папкам и настроены виртуальные хосты. В каждую ложатся php-скрипты, для своего сайта. Для защиты от возможных нежелательных действий используется директива open_basedir в httpd.conf. Однако для многих CMS она почему-то вызывает местами «глюки», например если в httpd.conf:
Код
php_value open_basedir "S:/www/mysite.ru/" Warning: is_file(): open_basedir restriction in effect. File(S:/www/mysite.ru/S:/www/mysite.ru/admin/media/style/common/welcome.tpl) ИМХО: Что вероятно свидетельствует о том, что в результате применения директивы - скрипт не может адекватно получить путь root из какой-то системной переменной. Больше склоняюсь, что какая-то неверная настройка, чем ошибка в работе скриптов. Как правильно ограничить действия php скриптов своим виртуальным хостом другим способом?
0
|
16.02.2018, 02:15 | |
Ответы с готовыми решениями:
12
Как правильно сделать трансфер сайта с хостинга Как ограничить перемещение кнопки в пределах диапазона Создание виртуального хостинга Как построить правильно структуру сайта и разделить php и html? |
14 / 60 / 21
Регистрация: 15.06.2017
Сообщений: 572
|
|
16.02.2018, 07:35 | 2 |
Наши руки не для скуки? выкиньте эти директивы из httpd.conf и php.ini. На локальном сервере они не нужны, а на хостинге - это вообще не ваше дело.
в коде неправильно формируются пути к файлу. директивы настроек сервера здесь никак не влияют
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
16.02.2018, 09:29 | 3 |
0
|
12 / 17 / 2
Регистрация: 02.11.2015
Сообщений: 222
|
|
16.02.2018, 22:01 [ТС] | 4 |
не фсё так просто... если бы так было, так то ошибка была другого характера, что путь указан неверно..
вроде этого Warning: file_get_contents(../blabla/target.txt): failed to open stream: No such file or directory in S:\www\mysite.ru\tst.php on line 7 Залез в CMS посмотрел код в строке с ошибкой, ничего там сверхъестественного нету, все переменные с правильными путями.. Хочу уточнить CMS без open_basedir работает нормально. Если бы ошибка была с неправильными путями, то выдавалась бы такая инфа при выключенном "open_basedir" Warning: file_get_contents(../outside.txt): failed to open stream: Operation not permitted in S:\www\mysite.ru\tst.php on line 7 Проблема в аномалиях работы сервера, которые связаны с open_basedir
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
16.02.2018, 22:04 | 5 |
Еще раз, никаких аномалей с open_basedir нет. С путем явно что-то не так, вот и надо разобраться откуда он такой берется
0
|
14 / 60 / 21
Регистрация: 15.06.2017
Сообщений: 572
|
|
16.02.2018, 22:08 | 6 |
Eskander88, уберите ненужные директивы и посмотрим останется ли ошибка. Чего гадать-то...
0
|
12 / 17 / 2
Регистрация: 02.11.2015
Сообщений: 222
|
|
17.02.2018, 20:14 [ТС] | 7 |
тогда уточняю... Без директивы open_basedir никакой ошибки нету! Если бы была ошибка в логике работы скрипта, то из-за этого была бы ошибка по любому! Вроде такого:
Данная проблема периодически вылезает в разных разделах CMS что мешает тестированию сайтов на локалке. Директива нужна, т.к. кто его знает что туда зальют или каким атаком сайт подвергался.. а без open_basedir можно даже .exe шник записать в директорию Добавлено через 7 минут вообще кто как организует песочницу для локальных хостов? ... я понимаю что народ тупо наверное забивает в большинстве.. но всё же
0
|
14 / 60 / 21
Регистрация: 15.06.2017
Сообщений: 572
|
|
17.02.2018, 20:16 | 8 |
Если вы настаиваете на том что виновата данная директива и невозможно получить корневую директорию, то вините в этом не CMS, не php, а WAMP! Ставьте по инструкции разработчика апач, подключайте к нему php, устанавливайте MySQL и не пользуйтесь левыми сборками. Правильная система развертывается за полчаса на винде. И без глюков
0
|
12 / 17 / 2
Регистрация: 02.11.2015
Сообщений: 222
|
|
17.02.2018, 20:26 [ТС] | 9 |
... ну если честно собирал WAMP в ручную, из оф. репозитариев php, apache, MySQl
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
17.02.2018, 20:26 | 10 |
Eskander88, т.е видя вот такой путь
S:/www/mysite.ru/S:/www/mysite.ru/admin/media/style/common/welcome.tpl ты продолжаешь утверждать что нет проблем с логикой скрипта? Ну чтож, учачи
0
|
12 / 17 / 2
Регистрация: 02.11.2015
Сообщений: 222
|
|
17.02.2018, 21:15 [ТС] | 11 |
нет, я конечно допускаю, что кодер мог не знать о каком-то архаизме или супер нюансе.. но визуально всё впорядке, смотрел в узле по get_defined_vars().. объясните пожалуйста игнор такой очевидной вещи. Если код железобетонен, и ошибка всплывает из-за неправильного пути в переменной, когда включена open_basedir, то - и когда она будет выключена, будет принтеть Ошибку!!! Или нет???
Добавлено через 41 минуту ..... не знаю , как вот пояснить... мне в принципе всё равно, что там не так и как... есть ли реальный способ ограничить действия скриптов в границах корневой сайта??? Т.е. что там использовал разработчик... Ну если серьёзно, на хостинге записать вне корневую сайта нельзя! Тем не менее CMS не бесится... работает норм.. Может просто вырубают сообщения об ряде ошибок из этой категории? Есть какие-нибудь предположения?
0
|
12 / 17 / 2
Регистрация: 02.11.2015
Сообщений: 222
|
|
20.02.2018, 15:10 [ТС] | 12 |
Пришлось тесно заняться проблемой и провести тесты вне своего задания. Оказалось, что на хостинге php-скрипты могут выходить за пределы папки сайта написал в саппорт, посмотрю как они это прокомментируют с точки зрения безопасности?
0
|
12 / 17 / 2
Регистрация: 02.11.2015
Сообщений: 222
|
|
21.02.2018, 20:21 [ТС] | 13 |
.. нашёл зацепку! Не предавал этому значение, а теперь вот заметил... у меня на локалке настроен доступ по http:// и https://, если сайт конечно присланный сайт https:// и есть возможность скопировать файлы ключа на локалку...
так вот.. когда на локалке обращаюсь по https:// то open_basedir не работает, а вот когда http:// то сразу идут ошибки, что скрипт не имеет прав доступа выше своей директории... весело короче
0
|
21.02.2018, 20:21 | |
21.02.2018, 20:21 | |
Помогаю со студенческими работами здесь
13
Настройка виртуального хостинга Apache для всех компьютеров сети Php, соединение элементов шаблона сайта между собой. как правильно? Парсинг Сайта(не могу понять как правильно спарсить сгенерированную php таблицу ) Как получить переменную с сайта (Хостинга)? Как правильно подключить стили и скрипты? Как правильно загрузить ASP скрипты? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |