Установка веб 1.9.2 ревизия от 25.01.11
#1
Отправлено 28 Январь 2011 - 14:07
Пытаюсь зайти, пишет ошибку что не может записать файл в папке templates_c
смотрю на сервере, файл создается с 0 размером с правами 600.
Смотрю в версию 1.8.4 (на этом же сервере) там в папке templates_c файлы создаются с правами 644
Владельцем всех папок является root. создаваемые файлы имеют владельца webrun. Переназначение владельца папкам не помогло.
Подскажите в каком месте копать?
#2
Отправлено 28 Январь 2011 - 14:11
#4
Отправлено 28 Январь 2011 - 14:38
DarkNight (28.1.2011, 14:07) писал:
DarkNight (28.1.2011, 14:07) писал:
DarkNight (28.1.2011, 14:30) писал:
#5
Отправлено 28 Январь 2011 - 14:56
Разработчик (28.1.2011, 14:38) писал:
В папке с 1.8.4 тоже на все папки и файлы права 777 ?
Возможно дело в настройках сервера.
в корне сайта лежит 1.8.4, там же создана папка cb, на все права ch -R 777 ./
Возможно, вот только каких?
В апаче хост только один.
вот текст ошибки
Fatal error: Uncaught exception 'Exception' with message 'unable to write file /srv/www/htdocs/cb/templates_c/wrtgfeH2Q' in /srv/www/htdocs/cb/include/Smarty/sysplugins/smarty_internal_write_file.php:34 Stack trace: #0 /srv/www/htdocs/cb/include/Smarty/sysplugins/smarty_internal_template.php(278): Smarty_Internal_Write_File::writeFile('/srv/www/htdocs...', NULL, Object(Smarty)) #1 /srv/www/htdocs/cb/include/Smarty/sysplugins/smarty_internal_template.php(417): Smarty_Internal_Template->compileTemplateSource() #2 /srv/www/htdocs/cb/include/Smarty/sysplugins/smarty_internal_template.php(544): Smarty_Internal_Template->renderTemplate() #3 /srv/www/htdocs/cb/include/Smarty/Smarty.class.php(336): Smarty_Internal_Template->getRenderedTemplate() #4 /srv/www/htdocs/cb/include/Smarty/Smarty.class.php(380): Smarty->fetch('templates/setup...', NULL, NULL, NULL, true) #5 /srv/www/htdocs/cb/setup.php(317): Smarty->display('templates/setup...') #6 {main} thrown in /srv/www/htdocs/cb/include/Smarty/sysplugins/smarty_internal_write_file.php on line 34
#6
Отправлено 28 Январь 2011 - 15:27
<?php $f=fopen("/srv/www/htdocs/cb/templates_c/1.txt", "w"); fwrite($f,"123"); fclose($f); ?>выполните файл. Появляются какие-либо ошибки при выполнении, появился файл 1.txt с текстом '123' внутри?
#7
Отправлено 28 Январь 2011 - 16:02
Analitic (28.1.2011, 15:27) писал:
<?php $f=fopen("/srv/www/htdocs/cb/templates_c/1.txt", "w"); fwrite($f,"123"); fclose($f); ?>выполните файл. Появляются какие-либо ошибки при выполнении, появился файл 1.txt с текстом '123' внутри?
появляется, ошибок нет.
#8
Отправлено 28 Январь 2011 - 16:21
#10
Отправлено 28 Январь 2011 - 18:06
DarkNight (28.1.2011, 17:43) писал:
Проблемным оказался smarty, я подложил более старую версию - пока работает, весь функционал пока не проверил.
#11
Отправлено 31 Январь 2011 - 17:30
Analitic (28.1.2011, 18:06) писал:
В общем обновил смарти с ихнего сайта, ошибку не выдает, но файлы в templates_c создаются 0 на их форуме поднимался такой вопрос, http://www.smarty.net/forums/viewtopic.php...ternalwritefile
на нашем сервере php 5.2.6 и zend.ze1_compatibility_mode=off
Может есть какие соображения?
#12
Отправлено 01 Февраль 2011 - 09:40
<?php class test1 { public $my_var="old_val"; } function funct0($cl) { $cl->my_var="new_val"; } $t_cl= new test1; funct0($t_cl); print_r($t_cl); ?>
#14
Отправлено 01 Февраль 2011 - 10:29
Нужно делать разбор работы кода смарти на вашем хостинге, пошаговая отладка, для этого нужен ftp доступ.
#15
Отправлено 01 Февраль 2011 - 14:26
Analitic (1.2.2011, 10:29) писал:
Нужно делать разбор работы кода смарти на вашем хостинге, пошаговая отладка, для этого нужен ftp доступ.
Проблема как раз в том что описано на форуме smarty.
Я не совсем правильно выполнил скрипт, я его запустил из консоли.
если положить этот скрип в папку с сайтом и обратится к нему через браузер, то результат такой
test1 Object ( [my_var] => old_val )
#16
Отправлено 01 Февраль 2011 - 15:17
DarkNight (31.1.2011, 17:30) писал:
DarkNight (1.2.2011, 14:26) писал:
если положить этот скрип в папку с сайтом и обратится к нему через браузер, то результат такой
test1 Object ( [my_var] => old_val )
ваши ответы наводят на мысль, что вы выключили ze1_compatibility_mode - только для консольного режима. Для консольного режима и web часто используются разные php,ini. Убедитесь что в обоих файлах эта опция присутвует.
Можете также попробовать просто добавить строку в .htaccess
php_flag zend.ze1_compatibility_mode off
#17
Отправлено 01 Февраль 2011 - 15:21
<?php class test1 { public $my_var="old_val"; } function funct0($cl) { $cl->my_var="new_val"; } ini_set('zend.ze1_compatibility_mode',0); $t_cl= new test1; funct0($t_cl); print_r($t_cl); ?>
До внесения изменений в конфигурационные файлы.
#18
Отправлено 01 Февраль 2011 - 15:48
Analitic (1.2.2011, 15:21) писал:
<?php class test1 { public $my_var="old_val"; } function funct0($cl) { $cl->my_var="new_val"; } ini_set('zend.ze1_compatibility_mode',0); $t_cl= new test1; funct0($t_cl); print_r($t_cl); ?>
До внесения изменений в конфигурационные файлы.
test1 Object ( [my_var] => new_val )
После внесения изменений в .htaccess ничего не поменялось
#19
Отправлено 01 Февраль 2011 - 16:02
ini_set('zend.ze1_compatibility_mode',0);
в файл config.php
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных