Поэтому у меня есть настройка сайта на сервере Windows 2008 R2 IIS 7.5, развернутом в виртуальный каталог, который мы будем называть "virtdir".
Просмотр по http://localhost/virtdir/default.aspx
работает отлично...
У меня есть настройка имени домена, которая перенаправляется на virtdir.
Итак, http://example.com
существу показывает то же самое, что я вижу выше, по адресу http://localhost/virtdir/default.aspx
Когда вы просматриваете прямо на http://example.com
и смотрите на него через инструменты веб-разработчиков Chrome, он отображает несколько 404
ошибок, сообщающих мне, что он не может найти файлы .js and.css
.
Однако, если я перейду к http://example.com/virtdir/default.aspx
никаких ошибок и файлов не будет нормально загружаться.
Вот существующий код:
<script type="text/javascript" src="Libraries/dojo/dojo/dojo.js"></script>
<script type="text/javascript" src="jscript/timezone.js"></script>
Если я изменил код с префиксом ниже, используя "..",
<script type="../text/javascript" src="Libraries/dojo/dojo/dojo.js"></script>
<script type="../text/javascript" src="jscript/timezone.js"></script>
Это в основном ломается в другую сторону, то есть теперь он будет работать, просматривая прямо на http://example.com
, но не работает, просматривая http://example.com/virtdir/default.aspx
Как заставить его работать в обоих направлениях, без жесткого кодирования всего URL-адреса http://example.com/virtdir/jscript/timezone.js
Вам либо нужно жестко закодировать весь URL-адрес, либо вам нужно добавить виртуальные каталоги в свои библиотеки и папки jscript, чтобы один и тот же путь существовал на обоих сайтах.