Как найти URL-адрес приложения?
Я бы хотел найти базовый url моего приложения, поэтому я могу автоматически ссылаться на другие файлы в моем дереве приложений.
Так что заданный файл config.php в базе моего приложения, если файл в подкаталоге включает его, знает, что префикс url с.
Я не уверен, если это возможно, многие приложения (phpMyAdmin, Squirrelmail, я думаю) должны установить конфигурационную переменную для начала. Это было бы более удобным для пользователя, если бы оно просто знало.
ОТВЕТЫ
Ответ 1
Я использую следующее в структуре homebrew. Поместите это в файл в корневую папку вашего приложения и просто включите его.
Приведенный выше код определяет две константы. ABSPATH содержит абсолютный путь к корню приложения (локальная файловая система), в то время как URLADDR содержит полный URL-адрес приложения. Он работает в ситуациях mod_rewrite.
Ответ 2
Вы можете найти базовый url с следующим кодом:
Ответ 3
REQUEST_URI в сочетании с dirname() может сообщить вам ваш текущий каталог, относящийся к URL-адресу:
So http://example.com/test/test.php печатает «/test» или http://example.com/ печатает «/», который вы можете использовать для генерации ссылок для ссылки на другие страницы относительно текущего пути.
EDIT: только что понятый при повторном чтении, что вы можете спрашивать о пути на диске, а не о пути URL. В этом случае вы хотите вместо PHP getcwd():
Ответ 4
Если вы не отследите это самостоятельно, я не верю, что это будет определение. Вернее, вы просите PHP отслеживать то, что вы произвольно определяете.
Долгое и короткое, если я правильно понимаю ваш вопрос, я не верю, что то, о чем вы просите, существует, по крайней мере, не как «основной» PHP; данная структура может предоставить «корневой» URL-адрес относительно структуры каталогов, которую он понимает.
Ответ 5
Поместите это в свой config.php(который находится в корневом каталоге вашего приложения):
Я думаю, что это сделаю.
Ответ 6
URL-адрес приложения можно найти по
этот код вернет URL-адрес любого приложения, будь он онлайн или на автономном сервере.
Я не сделал надлежащую проверку для правильного ‘/’. Пожалуйста, измените его для косой черты.
этот файл должен быть помещен в корневой каталог.
пример: если URL приложения:
то этот код вернет
Ответ 7
Одним из решений было бы использовать относительные пути для всего, так что не имеет значения, где установлено приложение. Например, чтобы перейти к вашей таблице стилей, используйте это:
Ответ 8
Ответ 9
Я никогда не нашел способ сделать это так.
Я всегда устанавливаю конфигурационную переменную с пулом сервера на один уровень выше веб-корня. Тогда это:
Ответ 10
Это работает как прелесть для меня, везде, где я развертываю, с правилами перезаписи или без них:
$baseDir = ‘http://’.$_SERVER [‘ HTTP_HOST ‘]. (dirname ($ _SERVER [‘ SCRIPT_NAME ‘])! =’/’? dirname ($ _ SERVER [ «SCRIPT_NAME» ]).’/’:’/’);
Ответ 11
Это то, что я использовал в своем приложении, которое отлично работает, я также использую пользовательский порт, поэтому мне тоже пришлось это учитывать.


