Google Chrome заставляет Zen Cart не проверять безопасность в форме входа - PullRequest
0 голосов
/ 15 января 2011

У меня странная ситуация с Google Chrome и только с Chrome.Хотя я нашел его в корзине Zen Cart, я не вижу, что он специфичен для кода и, поскольку он влияет ТОЛЬКО на Chrome, я подумал, что он может быть здесь более интересен.

Когда Zen Cart установлен наIP-адрес (то есть: 192.168 ... а не domain.com) и при входе с правильными учетными данными выдает ошибку

Произошла ошибка безопасности при попытке входа

, если для настройки по умолчанию «cookie domain» и «IP to Host Conversion Status *» задано значение «true».Когда я установил в false, я могу войти, используя Chrome.В любом случае, я могу войти в систему с IE, FF и Opera.

Все шлепают Chrome на форуме Zen Cart, говоря: «найдите подходящий браузер», но я не уверен, что это полностью вина Chrome, ножурналы ошибок сервера фактически ничего не регистрируют для этого.

Я также пытался задать вопрос на форуме Google Chrome, но речь идет об уровне Yahoo!Там есть ответы («как я использую хром для очков, чтобы посмотреть, как леди делает пипи?», «Как формируется бабби?» И т. Д.), И ответа не последовало.

Часть кода PHP, которая делает этосообщение:

if ((!isset($_SESSION['securityToken']) || !isset($_POST['securityToken'])) || ($_SESSION['securityToken'] !== $_POST['securityToken'])) 
{ $message = true; $pass_message = ERROR_SECURITY_ERROR; }

и форма входа:

<form name="loginform" action="<?php echo zen_href_link(FILENAME_LOGIN, '', 'SSL'); ?>" method="post">
<fieldset>
<legend><?php echo HEADING_TITLE; ?></legend>
<label class="loginLabel" for="admin_name"><?php echo TEXT_ADMIN_NAME; ?></label>
<input style="float: left" type="text" id="admin_name" name="admin_name" value="<?php echo zen_output_string($admin_name); ?>" />
<br class="clearBoth" />
<label  class="loginLabel" for="admin_pass"><?php echo TEXT_ADMIN_PASS; ?></label>
<input style="float: left" type="password" id="admin_pass" name="admin_pass" value="<?php echo zen_output_string($admin_pass); ?>" />
<br class="clearBoth" />
<?php echo $pass_message; ?>
<input type="hidden" name="securityToken" value="<?php echo $_SESSION['securityToken']; ?>" />
<input type="submit" name="submit" class="button" value="Login" />
<?php echo '<a style="float: right;" href="' . zen_href_link(FILENAME_PASSWORD_FORGOTTEN, '', 'SSL') . '">' . TEXT_PASSWORD_FORGOTTEN . '</a>'; ?>
</fieldset>
</form>

1 Ответ

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

Почему бы просто не обойти это, имея для этого DNS-запись (например, mycoolsite => 192.168.222.222 или что-то еще)? Эта запись A должна либо находиться на DNS-сервере вашей локальной сети, либо в файле hosts вашей системы (если на вашем сервере нет сервера), либо в Интернете добавляться к DNS-записям вашего домена.

...