Совместное использование включает в себя файлы с PHP через домены на общем хостинге

  1. Можно ли использовать папку "Включение" на одном веб-сайте и настроить "доверенные домены /IP-адреса", которым разрешен доступ к файлам в этой папке (все другие домены /IP-адреса ограничены)? Все сайты находятся на одном сервере общего хостинга, глобальный сайт имеет выделенный IP-адрес, остальные имеют другой IP-адрес.

  2. Это слишком небезопасно, чтобы разрешить включение PHP в разные домены?

  3. Если этот сценарий невозможно настроить, есть ли альтернативы для общего доступа к файлам на стороне сервера в глобальном масштабе и относительно безопасно?

Изменить: сервер Apache

При включении файлов между доменами выдает ошибку:

Warning: include(/home/user1/public_html/file.php) [function.include]:
failed to open stream: Permission denied in /home/user2/public_html/file.php

2 ответа

Если все сайты находятся на общем сервере, вы можете сделать папку доступной для чтения, и они могут включать этот путь. Скажем, /blah/globalphpshare/ и пользователь 'homer' хочет использовать greet.php, который он / она мог бы просто сделать include("/blah/globalphpshare/greet.php");

Если на вашем хосте включена защита webroot в apache, путь к файловой системе не будет работать, но вы все равно сможете включить вот так:

<?php include('http://www.somedomain.com/?query=string'); ?>

Основное различие заключается в том, что включенный файл видит только те переменные, которые вы передали ему в строке, и возвращается HTML, который php анализировал из файла в исходном домене. В зависимости от того, что находится во включенном файле, это может быть хорошо.

Другие вопросы по тегам