Как добавить относительные ссылки (имена файлов на удаленном компьютере в сети) на странице PHP

Есть три машины - 1. Сервер - где развернуто приложение. Назовите его Машина1. 2. Вторая машина, на которой хранятся некоторые файлы. Назовите это машиной ABC. 3. Машина, с которой я получаю доступ к приложению, развернутому на Машине1.

Допустим, http://testapplication.com:8080/pagedirectory/viewCart.php

На viewCart.php есть некоторые ссылки, отображаемые как \\ABC\Folder1\file.xml. Если я получу доступ к этому пути напрямую, набрав или скопировав в браузер, это сработает, и я смогу увидеть файл. Но если я нажимаю на веб-страницу, она не открывается и выдает ошибку - The requested URL /pagedirectory/\\ABC\Folder1\file.xml was not found on this server.

Если я наведу указатель мыши на эту ссылку, в строке состояния внизу браузера я увижу

http://testapplication.com:8080/pagedirectory/\\ABC\Folder1\file.xml

Таким образом, кажется, что он добавляет базовый каталог, из которого вызывается страница, ко всем ссылкам и, следовательно, выдает ошибку.

Журналы говорят Found %2f (encoded '/') in URI (decoded = '/somepath')...returning 404 referer в журналах apache, когда я пытаюсь щелкнуть ссылку выше, отображаемую на странице, с моей машины. Если я получаю доступ к приложению на машине, где оно размещено, оно просто отлично работает без проблем. Так что я делаю неправильно? Я видел в некоторых сообщениях использование AllowEncodedSlashes On, но не уверен, куда их поместить, и я не использую виртуальные хосты.

Пожалуйста помоги !!.


person anujin    schedule 25.09.2012    source источник


Ответы (1)


Несколько идей:

  1. Вам нужно, чтобы эти "\" повернулись в другую сторону для ваших URL-адресов.
  2. Если он добавляет базовый каталог, то у вас могут быть относительные URL-адреса - если ваш href="something" перейдет в /base/directory/something. Но если вы используете абсолютный URL-адрес href="/something", он перейдет к /something
  3. Если это не относительные URL-адреса, проверьте свою конфигурацию apache и убедитесь, что у вас нет каких-то причудливых правил перезаписи.
person Mike Graf    schedule 25.09.2012
comment
спасибо Майк за предложения. Но если это так, я не смогу получить доступ к URL-адресам, открыв приложение с компьютера, на котором оно развернуто. Итак, если я попробую с Machine1, все будет хорошо, но с любой другой машины это не сработает. - person anujin; 25.09.2012