Сообщение об обновлении файла появляется несколько раз, После сохранения файла через гугл.докс в битркис диск окно об обновлении файла появляется с периодичностью
Денис Сон написал: Это, я думаю, приведет к циклическому редиректу.
Действительно) Не заметил что пути в начале не отличаются) Правда, если честно не уверен насчет ссылки: /projects/photo-metallocherepitsa?utm_source=123, будет ли переброшена правильно
Павел Обухович, проблема кроется на стыке: дело в том, что 504 ошибку выдает nginx, потому что слушает 5 минут (в идеале) и отваливается. Соответственно проблема не на уровне битрикса, а на уровне серверного ПО. Раз вас послали то скорее всего у вас VPS, а за VPS хостинг ответственности не несет (там Вы сами себе администратор). Если у Вас shared-хостинг, то пиняйте на него и тыкайте ответом от битрикса.
Если у Вас VPS то увы обе компании совершенно справедливо вас футболят, но так как это свой хостинг можно попробовать поиграться: 1) Можно попробовать закостылить и временно увеличить timeout минут скажем до 10-15 и посмотреть не отвалится ли браузер (но нужно разбираться в серверной настройке) 2) Можно конечно написать свой экспорт (но нужно знать программирование) 3) Можно нанять фрилансера (но нужно заплатить денег)
Евгений Шутов, если Вы используете правила работы с корзиной то можно сделать очень простое и элегантное решение:
1) Создать множественное свойство типа список - где указать список доп. услуг. И у соответствующих товаров сделать их вывод в публичной карточке 2) Кастомизировать добавление товара в корзину, чтобы считывать эти поля 3) Создать правило корзины, которое бы добавляла наценку ко всем товарным позициям на нужную сумму.
Максим Мерс, там вообще сложный процесс, который должен файлик подключить в конфигурацию httpd. Не берусь сказать за актуальный файл, но на демо окружении (7.1) он вот такой (достал из /root/bitrix-env/etc/httpd/mod_ntlm.conf):
Код
<IfModule !auth_ntlm_winbind_module.c>
LoadModule auth_ntlm_winbind_module modules/mod_auth_ntlm_winbind.so
</IfModule>
Listen 8890
<VirtualHost *:8890>
ServerAdmin webmaster@localhost
DocumentRoot /home/bitrix/www_ntlm
KeepAlive On
<Directory /home/bitrix/www_ntlm/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
DirectoryIndex index.php index.html index.htm
Order allow,deny
allow from all
AuthName "NTLM Authentication thingy"
NTLMAuth on
NTLMAuthHelper "/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp"
NTLMBasicAuthoritative on
AuthType NTLM
require valid-user
php_admin_value session.save_path /tmp/php_sessions/www
php_admin_value upload_tmp_dir /tmp/php_upload/www
</Directory>
ErrorLog logs/error_log
# Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
LogLevel warn
# CustomLog logs/access_log combined
</VirtualHost>
<IfModule !ssl_module.c>
LoadModule ssl_module modules/mod_ssl.so
SSLPassPhraseDialog builtin
SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout 300
SSLMutex default
SSLRandomSeed startup file:/dev/urandom 256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
</IfModule>
Listen 8891
<VirtualHost *:8891>
ServerAdmin webmaster@localhost
DocumentRoot /home/bitrix/www_ntlm
KeepAlive On
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/nginx/ssl/cert.pem
SSLCertificateKeyFile /etc/nginx/ssl/cert.pem
<Directory /home/bitrix/www_ntlm/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
DirectoryIndex index.php index.html index.htm
Order allow,deny
allow from all
AuthName "NTLM Authentication thingy"
NTLMAuth on
NTLMAuthHelper "/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp"
NTLMBasicAuthoritative on
AuthType NTLM
require valid-user
php_admin_value session.save_path /tmp/php_sessions/www
php_admin_value upload_tmp_dir /tmp/php_upload/www
</Directory>
ErrorLog logs/error_log
# Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
LogLevel warn
# CustomLog logs/access_log combined
</VirtualHost>
+ Нужно еще создать папку /home/bitrix/www_ntlm/ в ней симлинки на upload, images, bitrix, local и файлы из /root/bitrix-env/vm_ntml.tar.gz
Ну это я к тому, что еще и керберос и самба уже настроены и нехватает только кофигурации для апача
Влад, не могу согласиться с Вами - применение будь-то фреймворка для верстки или js-плагина могут вызвать нестабильную работу CMS. Именно для этого существует marketplace (в котором модули с "гарантированной" совместимостью).
В следующий раз, уж пишите где нашил. Настройка расположена по адресу: Админка - Настройки - Модули - Соц. сеть. Называется: "Разрешать адресовать "Всем" сообщения в Живой ленте" и "Отображать адресацию "Всем" по умолчанию"
Роман Махин, парень, вот умеешь тупить (прости меня за выражения). Подучи пожалуйста как хранятся файлы в Битрикс24 - зачем нужна таблица b_file, что такое b_disk_object.
Вот кусочек кода, который делает почти все что нужно - перемещает логический файл с ID - 525 в физическую папку. Там много косяков (которые, я надеюсь, ты сам найдешь и исправишь).
Код
use \Bitrix\Main\Loader,
\Bitrix\Disk;
/* @var string Папка на сайте, куда будем копировать (нужно чтобы были права на нее) */
$toPath = '/upload/tmp/';
/* @var integer ID файла, который будем копировать */
$iFileId = 525;
try
{
if ( !Loader::includeModule('disk') )
{
throw new Exception("Не подклчюен модуль диска");
}
/* @var Disk\Driver Объект 'управленца' хранилищами */
$driver = Disk\Driver::getInstance();
/* @var Disk\FakeSecurityContext Объект прав - читаем все, а не то что доступно пользователю */
$securityContext = $driver->getFakeSecurityContext();
/* @var Disk\File Объект папки с которой начнем поиск */
$file = Disk\File::loadById($iFileId);
/* @var array Данные по файлу */
$arFileData = $file->getFile();
if ( file_exists($_SERVER['DOCUMENT_ROOT'].'/upload/'.$arFileData["SUBDIR"].'/'.$arFileData["FILE_NAME"]) )
{
if ( copy($_SERVER['DOCUMENT_ROOT'].'/upload/'.$arFileData["SUBDIR"].'/'.$arFileData["FILE_NAME"], $_SERVER['DOCUMENT_ROOT'].$toPath.$file->getName() ) )
{
echo 'Файл перемещен, скачать можно по ссылке <a href="'.htmlspecialchars($toPath.$file->getName()).'" download>'.$toPath.$file->getName().'</a>';
}
else
{
throw new Exception("Ошибка копирования файла!");
}
}
else
{
throw new Exception("Физический файл не найден");
}
}
catch( Exception $e )
{
echo "Произошла ошибка: \r\n";
var_dump($e->getMessage());
}