| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Редактирование файлов через субдомен |
| Автор: Geni 24.1.2010, 22:22 | ||||
| Проблема следующая: есть сайт example.com и субдомен dom.example.com. dom.example.com защищён паролем через .htpasswd и .htaccess. Нужно через страницу dom.example.com/write.php редактировать файл на основном домене example.com/1.txt. Пробовал стандартно: Файл write.php:
Не сработало. Пробовал "играться" с адресом в fopen - безрезультатно (например, выход "../../../httpdocs/1.txt"). Права выставлял на папку "httpdocs" (в которой находится файл 1.txt) 775 (пробовал и 777). Также реализовал идею с вызовом скрипта другим скриптом. Т.е. скрипт на субдомене через комбинацию:
вызывал скрипт на основном домене (script2.php), а тот в свою очередь выполнял необходимые мне опреации редактирования. Но есть большой минус - script2.php должен быть доступен только скрипту, а не всем желающим. Решение казалось бы банальным: в .htaccess прописать <files script2.php>deny from all</files>. Но тогда скрипт перестаёт быть доступным на вызов скриптом на субдомене. Вопрос: как это можно реализовать без потерь в безопастности? |
| Автор: bars80080 24.1.2010, 23:28 |
а они физически находятся на одном сервере? |
| Автор: Geni 24.1.2010, 23:50 |
| Да |
| Автор: bars80080 24.1.2010, 23:56 |
| а нельзя ли обойти все эти хитрые операции с промежуточными чтениями чужих серверов, и сразу подключить нужный файл прямо в код? |
| Автор: brother79 25.1.2010, 06:57 |
| Надо смотреть что разрешает хостинг. У нас например нету доступа к файлам за пределами своей папки из пхп, т.е. там есть в пхп один параметр, который задаёт разрешенные каталоги, к другим доступа нету. |
| Автор: bars80080 25.1.2010, 11:10 | ||
если можно из скрипта в домене дотянуться до скрипта в поддомене (у меня, к примеру, это можно), то надо работать именно на этом уровне. просто подкючая скрипт с помощью include. потому что вариант озвученный в первом посте заставляет раюотать через промежуточные сервера, что снижает скорость выполнения на порядки. да ещё и дополнительно нагружает ваш сервер по поводу самого вопроса: http://www.iho.ru/faq/manual/htaccess.html
|
| Автор: Ипатьев 25.1.2010, 15:47 |
| Перед тем, как назначать лечение, надо сначала узнать болезнь. Если автор сможет сформулировать (а лучше - процитировать) какое-то более информативное сообщение об ошибке, чем слово "безрезультатно", то можно будет давать конкретные советы. |
| Автор: Geni 25.1.2010, 17:38 | ||
| bars80080, спасибо за пояснения! Вот это решение работает:
Вместо "my_secure_document.html" подставил имя скрипта на основном домене. Вместо "192.168.1.1" адрес своего сервера. Теперь скрипт на основном домене доступен только скрипту на субдомене (а также любому скрипту на моём сервере), в остальных случаях ошибка "403". |