Почему мой сайт Drupal отключает пользователей при вызове функции Javascript?

У меня есть сайт Drupal 5, где нажимается кнопка, и она вызывает функцию JavaScript. Функция в основном строит строку, а затем перенаправляет на другую страницу нашего сайта. После нажатия кнопки иногда пользователь выходит из системы и видит экран «Доступ запрещен», даже если он был ранее авторизован. Страница, на которую он перенаправляется, имеет те же ограничения доступа, что и предыдущая страница, но независимо от этого, они не должны выходить из системы.

У одного пользователя это происходит примерно в половине случаев (другая половина работает должным образом), а другой пользователь сообщал, что всегда выходил из системы при нажатии этой кнопки. Однако я всегда могу запустить его без проблем на машинах, которые я использую, и я подозреваю, что это связано с ними, использующими IE6. Кто-нибудь сталкивался с этой проблемой раньше или есть идеи о том, что может быть причиной этого? Я искал и публиковал сообщения на форуме Drupal, и искал на этом форуме, и пока что мне не повезло.

поменял теги с "drupal 5" на просто drupal. 5 - не лучший тег :)

Swati 23.09.2008 04:26
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
1
1 023
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

На ум приходит многое.

  • Перенаправляется ли страница на тот же домен? domain.com и www.domain.com НЕ совпадают в том, что касается файлов cookie (в зависимости от того, как они установлены).
  • Сможете ли вы воспроизвести его на 100% достоверно в любом браузере? Не обижайтесь на ваших пользователей, но пользователи лгут (или, по крайней мере, плохо сообщают о технических ошибках). Я бы не стал доверять тому, что пользователь сказал мне как факт («о, ну да, я закрывал браузер между попытками. Но это не имеет значения»).
  • На сервере работает что-то, что очищает сеанс, или установлен ли предел срока действия сеанса слишком большой?

Мораль: попробуйте сначала воспроизвести проблему, чтобы вы могли сузить круг вопросов. Я предлагаю Firebug + Firecookie для отладки Firefox и общих проблем с файлами cookie и Fiddler2 (прокси) для отладки IE.

Тот факт, что это происходит с одним пользователем в половине случаев (при условии, что они находятся в одной и той же настройке), заставляет меня думать, что это также тайм-аут сеанса. Загрузка страницы, а затем возвращение после кофе и нажатие кнопки. Проверьте php.ini, чтобы изменить время ожидания

Matthew Rapati 23.09.2008 04:33

Это был первый пункт, исправивший это. Раньше он был жестко запрограммирован, и как только я изменил его на window.location.host, теперь он работает, как ожидалось. Спасибо, gregmac!

Pamela 23.09.2008 21:45

Я думаю, если честно, лучшим способом было бы опубликовать код, который вызывает это.

Drupal использует для этого сеансы PHP, которые используют файлы cookie ... у кого-нибудь из пользователей отключены файлы cookie?

Есть много вещей, которые могут быть причиной этого: перенаправление на другой домен, очистка сеансов (/ tmp cleanup?), Но обычно я помещаю что-то подобное в браузер.

Спросите их, могут ли они по-прежнему воспроизводить файлы в другом браузере (попробуйте firefox) ... проверьте их настройки безопасности файлов cookie и т. д.

Другие вопросы по теме