ссылаясь на .css и изображения из сгенерированного скриптом HTML - PullRequest
0 голосов
/ 10 июня 2011

У меня есть сайт со статическими HTML-страницами в домашнем каталоге. Эти HTML-страницы используют относительные пути для ссылок на изображения, CSS и ссылки, т.е.

<img src="images/myimg.gif">

и

<a href="contactUs.html">Contact Us</a>

У меня также есть монолитный скрипт, URL которого, например, http://mysite.com/myScript, который использует «дополнительную информацию о пути» для выбора функций ..., т.е. http://mysite.com/myScript/products показывает список продуктов. Так что в HTML, сгенерированном из скрипта, мне нужно ссылаться на изображения, CSS и ссылки, например:

<img src="../images/myimg.gif">

и

<a href="../contactUs.html">Contact Us</a>

Проблема в том, что теперь я хочу начать перемещать общий HTML в файлы include (например, общий заголовок и нижний колонтитул), но тот факт, что скрипт и статический HTML по-разному ссылаются на относительные ресурсы, усложняет дело.

Я не хочу использовать абсолютные пути, потому что это портит работу моей коллеги, когда она пытается работать над страницами в DramWeaver, а также делает сайт менее гибким.

Как лучше всего решить эту проблему? У меня была идея переписать URL-адрес в Apache, чтобы позволить URL-адресу http://mysite.com/products действительно использовать http://mysite.com/myScript/products, но у меня нет опыта с перезаписью URL-адреса, поэтому я не знаю, насколько это легко. У меня была еще одна идея - использовать атрибут META BASE в HTML, но мне не нравится тот факт, что мне придется жестко кодировать его на каждой HTML-странице, и он должен иметь полный URL-адрес (например, http://mysite.com/) в каждую. Любой совет?

1 Ответ

0 голосов
/ 10 июня 2011

Разве вы не можете ссылаться на свои изображения с косой чертой в начале, поэтому все файлы, на которые ссылаются, находятся в корне, независимо от того, насколько глубоко вы находитесь в структуре каталогов, в которой вы находитесь? Например:

<img src="/images/myimg.gif" />

EDIT:

Вы можете использовать $_SERVER, чтобы получить путь, затем использовать substr_count, чтобы подсчитать количество косых черт в пути. Добавьте столько ../, сколько вам нужно, исходя из этого числа. Будет ли это работать для вас?

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