Способ получить относительные пути для работы с использованием поддоменов? - PullRequest
0 голосов
/ 15 октября 2010

При доступе к странице через поддомен все включения и относительные пути нарушаются (даже если структура каталогов на сервере должна позволять относительный путь для ее поиска).Каков наилучший способ обеспечить доступ файлов к нескольким поддоменам к центральным ресурсам (без использования абсолютных путей)?

Пример JavaScript:

m_url : '../code/php/UserAPI.php',

    $.ajax({
        url: someClass.m_url,
        dataType: "json",
        data: paras,
        success: function(ret){someClass.onLoggedIn(ret, callback)}
    });

, если этот UserAPI вызывается из subdomain1.example.com и subdomain2.example.com но php находится на example.com как сделать так, чтобы относительный путь следовал структуре каталогов linux, а не добавлял попытки объединить путь субдомена / домена?

пс.Причина, по которой m_url не может быть жестко запрограммирована, заключается в том, что код должен работать как на серверах разработки, так и на производственных серверах.

Спасибо, как всегда !!

Ответы [ 2 ]

1 голос
/ 15 октября 2010

Когда bpeterson76 ответил, $_SERVER['PATH_TRANSLATED'] и $_SERVER['SCRIPT_FILENAME'] вы укажете необработанный путь к серверу сценария, который затем можно будет настроить в зависимости от структуры вашего субдомена.

Эти серверные переменные не всегда доступны, так что вы могли бы вместо этого использовать функцию PHP getcwd() - это вернет каталог скрипта без имени файла.Затем настройте, как указано выше.

1 голос
/ 15 октября 2010

Вы можете использовать $_SERVER['PATH_TRANSLATED'], чтобы определить текущую позицию на основе файловой системы, а затем перейти к ней.Однако для потребуется некоторая настройка .

. Возможно, альтернативным решением было бы через $ _SERVER определить, на каком хосте вы находитесь (Dev, Prod и т. Д.) И определитьэти пути по мере необходимости.Затем просто установите свой префикс, прежде чем определять путь.Конечно, требуется несколько дополнительных строк кода, но это сокращает повреждение мозга вдвое.Эта стратегия использовалась во многих крупных производственных средах, в которых я работал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...