Почему сайт на domain.com не работает, а www.domain.com работает? - PullRequest
0 голосов
/ 03 января 2011

Вот рабочая страница: игра на бардачке com

Неработающая страница - это тот же URL, за исключением "www.".

Теперь попробуйте нажать на элементы в галерее в левом верхнем углу страницы слева от видео на YouTube. Они открывают окно лайтбокса в одной версии, но не в другой.

Также попробуйте нажать кнопку «нажмите здесь, чтобы заказать». В обеих версиях веб-страницы появляется всплывающее окно, но как только вы сделаете свой выбор, а затем нажмете кнопку в этом окне с лайтбоксом, вы увидите ошибку в версии domain.com, но не в версии www.domain.com.

Мне не хватает чего-то смешного?

Ответы [ 3 ]

3 голосов
/ 03 января 2011

Поскольку объект является флэш-памятью, ему нужен файл политики, чтобы иметь права на выполнение кода JavaScript. И, возможно, он загружается с сайта www.dream.com, чтобы эта страница не индексировалась так хорошо под веб-сайтом domain.com, в отличие от domain.com, который нарушил бы политику междоменных доменов, поскольку они не считаются одним доменом Таким образом, вы должны изменить файл междоменной политики, чтобы включить все субдомены

Пример должен быть (если я не ошибаюсь):

<?xml version="1.0" ?>
<cross-domain-policy>
<allow-access-from domain="*.domain.com" />
</cross-domain-policy>
0 голосов
/ 03 января 2011

Проблема в том, что бэкэнд-скрипт domain.com, который обрабатывает запросы, отправляет 302 Moved временно, если он запрашивается без www.

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

Самое простое решение будетбыть для обновления сценария серверной обработки для удаления перенаправления 302.Или же принудительно перенаправьте весь трафик с http://domain.com на http://www.domain.com

0 голосов
/ 03 января 2011

При нажатии кнопки «Click to Order» вы возвращаете 302 статус перенаправления с адресом на www, которому ваш ajax-вызов не может следовать из-за той же политики происхождения

Скриншот ниже

alt text

...