2013-12-03 2 views
0

У меня есть иерархия, как:Загрузка изображения из поддомена?

  • index.html
  • /share/index.html
  • /img/myImage.png

доля/index.html на суб -домен (http://www.share.foo.com вместо http://www.foo.com).

Я хотел бы получить myImage.png из обоих доменов.

До сих пор я мог найти только один способ справиться с этим. От index.html я ссылку на изображение:

img/myImage.png 

и от /share/index.html я ссылку на изображение:

http://www.foo.com/img/myImage.png 

Это не чувствует себя правильно, потому что я не должен иметь чтобы быть явным с моим URL. Вероятно, это должно быть несколько относительно моей собственной структуры пути.

Мне интересно, какое здесь правильное решение? Должен ли share/index.html находиться на том же уровне, что и index.html? Как соглашения об именах работают на что-то подобное, если они оба должны быть index.html на одном уровне? Другие предложения?

ответ

1

Для доступа к изображению с «index.html» вы можете использовать относительный путь, как вы используете:

img/myImage.png 

Однако, когда вы находитесь в/доли/папки, необходимо вернуться назад папка:

../img/myImage.png 

Это, конечно, предполагается, что ваш/доли/каталога, это найти в корневой папке HTML (public_html или что-то твое можно назвать)

0

Вы можете использовать

../img/myImage.png

для получения изображения в подобласти.

Вы можете использовать несколько ../ вернуться любой уровень в иерархии

Для например:../../ будет принимать два уровня назад от текущего уровня.

+0

подпапка не является поддоменом :) –

+0

@IgorBenikov Имеет ли это значение? Если он находится в том же корневом каталоге, что и его www, то он не просто имеет дело с каталогами? – LuFaMa

+0

Да, это может быть корневой каталог и может быть и другим сервером) –

0

Есть два способа сделать это

Filesystem путь

Если сервер находится на системы, основанной на Unix (Linux), создать символическую ссылку на/акцию, что указывает на/IMG.

Из оболочки:

~$ cd /docroot/share 
~$ ln -s ../img img 

Это позволит сделать все содержимое /img появляются под /share/img, а также.

Если у вас нет прямого доступа к вашему веб-хосту, вы можете попробовать создать символическую ссылку в своей локальной копии своего каталога /share и синхронизировать его с сервером. Чтобы создать символическую ссылку, вам не нужно иметь копию места, где она указывает на вашем локальном компьютере.

Если вы находитесь на окнах, NTFS supports symbolic links, но я не могу сказать вам, как это будет синхронизироваться с веб-сервером.

Использование относительных путей ниже, чем ваш doc_root (../img/myImage.png), чтобы указать на изображение из вашего HTML-документа, в этом случае недопустимо. Было бы решить, чтобы: http://www.share.foo.org/../img/myImage.png

<base> тег путь

<base> тега устанавливает базовый адрес, где искать связанный контент. Недостаток: он станет базой для al-связанного контента. (Таблицы стилей, изображения и ссылки). Таким образом, страница, связанная как <a href=about.hmtl>, укажет на <base>/about.html.

<head> 
    <base href="http://www.foo.com/" target="_blank"> 
</head> 

<body> 
    <img src="img/myImage.png"> 
</body> 
Смежные вопросы