Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   [решено] Не работает JavaScript (http://forum.oszone.net/showthread.php?t=202645)

zvezda_t 22-03-2011 09:19 1640731

Не работает JavaScript
 
Здравствуйте, уважаемые программисты!

Помогите мне пожалуйста, разобраться с такой проблемой (ОЧЕНЬ ВАЖНО):
Может у меня с сайтом что то не то, или я не правильно код пишу...(использую cms Joomla)

Не работает JavaScript, хотя он подключен (Браузер IE8)!
Если только меняю настройки безопасности, добавив свой сайт в надежные узлы
('Сервис'->'Свойства обозревателя...'->'Безопасность'->'Надежные узлы'
Далее нажмаю на кнопку 'Узлы'. Откроется окно: 'Надежные узлы', в поле 'Добавить в зону следующий узел:' ввожу название сайта, убераю галочку 'для всех узлов этой зоны требуется проверка серверов(https:)' и добавляю)
- тогда JavaScript начинает работать, но ведь это не правильно, я же не могу всех пользователей заставлять настройки безопасности менять! Как можно по другому проблему решить, научите пожалуйста!!!!?

Sham 22-03-2011 09:30 1640737

Адреса подключаемых скриптов тоже дб https, либо относительными. В IE это вроде "разнородное содержимое" - ругается на это.

zvezda_t 22-03-2011 14:08 1640991

Почему https? я же убираю галочку, те я в итоге добавляю надежный узел просто как http://

Подключаю так:

PHP код:

//функция расчета 
print "<script type='text/javascript' language='javascript' src='http://"$_SERVER['HTTP_HOST'] ."/function/jscript/sum.js' ></script>"


Sham 22-03-2011 15:08 1641046

Чтобы IE не ругался, страница и все связанные внешние файлы должны загружаться по одному сертификату, т.е. дб тот же протокол и домен. Для этого можно сделать адрес корневым без домена (/function/jscript/sum.js).

zvezda_t 23-03-2011 07:38 1641618

Цитата:

Цитата Sham
Чтобы IE не ругался, страница и все связанные внешние файлы должны загружаться по одному сертификату, т.е. дб тот же протокол и домен. Для этого можно сделать адрес корневым без домена (/function/jscript/sum.js). »

сделала адрес корневым.

и поставила проверку прям в файле php:
PHP код:

//Не включен JavaScript-----------------------------------------------------------------------------
print "    
<script language='Javascript'><!--
// --></script>
<noscript>
<p align='center' style='font-weight:bold; color:#FF0000;'>
"
.iconv("cp1251","UTF-8",'В Вашем браузере ОТКЛЮЧЕН JavaScript! </p>
</noscript>
</script>";
//---------------------------------------------------------------------------------------------------- 

если сайт не добавлен в надежные узлы выводит:
"В Вашем браузере ОТКЛЮЧЕН JavaScript!"

Sham 23-03-2011 08:49 1641649

в IE8 нажмите F12 (средства разработчика), вкладка сценарий, начать отладку - смотрите что пишет.
В свойствах обозревателя на вкладке "безопасность" для зоны интернета сделайте уровень по умолчанию, или смотрите в "другой" группу "сценарии" - там переключатель "активные сценарии - включить"... также проверьте отладчиками других браузеров.

Если сертификат самоподписанный, то надо вручную подтверждать или добавлять в доверенные. см. настройки по сертификатам.

zvezda_t 23-03-2011 08:56 1641652

Еще такие настройки нашла в Браузере:
"Свойства обозревателя - Безопасность - Интернет - Другой - Активные сценарии - Включить."

Эти настройки у меня отключены из-за сертификата?

Цитата:

Цитата Sham
Если сертификат самоподписанный, то надо вручную подтверждать или добавлять в доверенные. см. настройки по сертификатам. »

Вот в чем проблема.... А где эти настройки смотреть, ПОЖАЛУЙСТА расскажите подробнее!

Sham 23-03-2011 09:13 1641658

для начала сделайте все настройки по умолчанию, и смотрите по отладчику (см. предыдущий пост).

zvezda_t 23-03-2011 09:17 1641660

Цитата:

Цитата zvezda_t
"Свойства обозревателя - Безопасность - Интернет - Другой - Активные сценарии - Включить." »

изменила эти настройки - JavaScript заработал!

только я не поняла, в итоге что в итоге правильно менять:
1)'Сервис'->'Свойства обозревателя...'->'Безопасность'->'Надежные узлы'->'Узлы'->'Добавить'
2)"Свойства обозревателя - Безопасность - Интернет - Другой - Активные сценарии - Включить."

Если меняю 1)-работает, если меняю 2) тоже работает.

Цитата:

Цитата Sham
в IE8 нажмите F12 (средства разработчика), вкладка сценарий, начать отладку - смотрите что пишет. »

ничего не пишет...

Sham 23-03-2011 09:32 1641671

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

zvezda_t 23-03-2011 09:36 1641673

Цитата:

Цитата Sham
2 - по умолчанию включено в браузере »

а у наших пользователей отключается из-за сертификата?

Цитата:

Цитата Sham
Проверьте настройки для всех зон (интернет - ограниченные узлы). »

где проверить??? я с сертификатами еще не работала(настройками системные администраторы обычно занимаются)

Sham 23-03-2011 09:47 1641683

Само ничего не отключается. Если сертификат самоподписан, или "разнородное содержимое" - юзеру предлагается самому сделать, что ему надо (окошко, ссылка и т.д.). Все настройки только вручную делаются, или автоматически твиками.

Короче, жмите кнопку "Выбрать уровень безопасности по умолчанию для всех зон" на вкладке "безопасность" - тестируйте на таком браузере. Если какие-то свои настройки в организации, то смотрите сами...

zvezda_t 23-03-2011 09:51 1641686

Цитата:

Цитата Sham
"Выбрать уровень безопасности по умолчанию для всех зон" »

не могу найти...

Sham 23-03-2011 10:01 1641691


zvezda_t 23-03-2011 10:10 1641693

Sham, спасибо Вам большое) и Благодарю за терпение!
Вы уж меня извините, что много вопросов задаю...

В итоге, я так поняла, что так как у нас подключение через сертификаты - то пользователю предлагается самому настройки в своём браузере задавать, а так как уровень безопасности высокий - то отключается JavaScript.
поэтому пользователю нужно самому устанавливать настройки безопасности:
2)"Свойства обозревателя - Безопасность - Интернет - Другой - Активные сценарии - Включить."
так?
и мы ничего не можем сделать, чтобы сразу JavaScript у них работал?

Sham 23-03-2011 10:27 1641710

настройки JS не связаны с сертификатами (отдельная настройка). Вы сами должны знать, какие у вас настройки зон у юзеров, и исходя из этого делать вывод. Если общие настройки запрещают скрипты для зоны "интернет", то домен нужно добавлять в доверенные (инструкцией юзеру, или автоматизированно).
Это дело сисадмина вообще-то (добавление сертификатов и доменов в доверенные).

zvezda_t 23-03-2011 11:55 1641791

Цитата:

Цитата Sham
то домен нужно добавлять в доверенные (инструкцией юзеру, или автоматизированно). »

это как я делала:
1)'Сервис'->'Свойства обозревателя...'->'Безопасность'->'Надежные узлы'->'Узлы'->'Добавить'
или я опять не правильно поняла?

Sham 23-03-2011 12:34 1641828

Да, но это дело сисадмина (кто за сеть отвечает). Это неправильно - юзеров напрягать.

zvezda_t 23-03-2011 12:40 1641834

Sham, спасибо Вам огромное, что так подробно мне всё объяснили!
поговорю с нашими системными администраторами. :)


Время: 21:06.

Время: 21:06.
© OSzone.net 2001-