Публикация новостей на крупных новостных порталах типа newsland, да, мы можем и это!
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
21.06.2011 13:16:30
Собственно тема посвящена тому, что сегодня благополучно разблокировали третий аккаунт, которым мы можем пользоваться для публикации новостей на newsland.ru
Список актуальных аккаунтов
Код
lexnekr
lexnekr@mail.ru
warlord-q@mail.ru
Все три аккаунта могут публиковать как простые новости, так и опросы. Это очень полезно, учитывая возможность предоставления нашей командой услуги "Комплексный проект" в рамках которой некоммерческие сайты могут набрать очень качественную ссылочную массу с подобных новостных ресурсов.
Обращайтесь, друзья!
2 рекламные области в 1C-bitrix ASP.NET
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
28.03.2011 18:50:15
Была перед нами задача сделать такую штуку, как на картинке:
Чтобы на одной странице было две рекламных области и на них показывались различные баннеры. И не просто картинку или флеш выводить, а полноценные баннеры, с ведением статистики, ротацией и заменами. Благо компонент в битриксе есть.
Сразу оговорюсь, если вы не используете FireFox 3.5 и 3.6 проблемы нет. Т.е. даже в Internet Explorer 9 BETA прекрасно работает визуальный редактор. А если вам не повезло, то вы сталкнётесь с проблемы различных идентификаторов для баннеров.
Два примера кода:
При попытке использования неправильного кода:
1) при сохранении в двух компонентах id="advertisingbanner1" выдаёт ошибку, при удалении этой строки так же ошибка, однако при любом текстово-численном значении 1й баннер работает.
2) значение поля Space = 04 - соответсвует интересующей нас рекламной области с новым баннером.
Что вполне логично и объяснимо.
Ещё раз повторюсь - используйте аккуратно идентификаторы баннеров и рекламных областей!
Invalid column name 'XmlId' в инфоблоках ASP.NET 1С-Битрикс
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
28.03.2011 18:34:43
ну мы для этого используем небольшой файлик, который запихали в /bitrix/admin/
Однако хотим предупредить, что это небезопасное решение - он проверяет только имеет ли юзер доступ к соответствующему файловому разделу. Контент-менеджер тоже может у вас пошалить...
Советую заливать по необходимости.
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Bitrix.UI;
using Bitrix.DataLayer;
using System.Data.SqlClient;
using Bitrix.Security;
using System.Collections.Generic;
public partial class bitrix_admin_SqlQuery : BXAdminPage
{
protected string exception;
public DataTable GetTable(BXSqlDataReader reader)
{
DataTable table = reader.GetSchemaTable();
DataTable dt = new DataTable();
DataColumn dc;
DataRow row;
List<KeyValuePair<string, string>> al = new List<KeyValuePair<string, string>>();
for (int i = 0; i < table.Rows.Count; i++)
{
dc = new DataColumn();
if (!dt.Columns.Contains(table.Rows[i]["ColumnName"].ToString()))
{
dc.ColumnName = table.Rows[i]["ColumnName"].ToString();
dc.Unique = Convert.ToBoolean(table.Rows[i]["IsUnique"]);
dc.AllowDBNull = Convert.ToBoolean(table.Rows[i]["AllowDBNull"]);
dc.ReadOnly = Convert.ToBoolean(table.Rows[i]["IsReadOnly"]);
dt.Columns.Add(dc);
al.Add(new KeyValuePair<string,string>(table.Rows[i]["ColumnName"].ToString(), dc.ColumnName));
}
}
while (reader.Read())
{
row = dt.NewRow();
for (int i = 0; i < al.Count; i++)
row[al[i].Value] = reader[al[i].Key];
dt.Rows.Add(row);
}
return dt;
}
protected void Page_Init(object sender, EventArgs e)
{
if (!BXUser.IsCanOperate(BXRoleOperation.Operations.ProductSettingsManage))
BXAuthentication.AuthenticationRequired();
}
protected void Button1_Click(object sender, EventArgs e)
{
try
{
DataTable t = null;
using (BXSqlCommand cmd = new BXSqlCommand(TextBox1.Text))
using (BXSqlDataReader data = cmd.ExecuteReader())
t = GetTable(data);
GridView1.DataSource = t;
GridView1.DataBind();
}
catch(Exception ex)
{
exception = ex.ToString();
}
}
}
Заходите на страничку SqlQuery.aspx (для этого оба файла должны лежать в одной директории) и вводите в имеющееся окошко запрос.
Invalid column name 'XmlId' в инфоблоках ASP.NET 1С-Битрикс
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
27.03.2011 20:35:59
Была такая проблема у версии 5.0 1С-Битрикс ASP.NET, если не ошибаюсь. В более поздних обновлениях должны были исправить, но я, если честно не знаю, ибо поправил проблему самостоятельно руками.
В общем, проблема проявляется так - заходим из админки в инфоблок (любой) - выдаёт ошибку:
Код
Server Error in '/' Application.
Invalid column name 'XmlId'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Invalid column name 'XmlId'.
Source Error:
Line 73: typeId = iblock.TypeId;
Line 74: hfTypeId.Value = typeId.ToString();
Line 75: type = BXIBlockType.GetById(typeId);
Line 76: if (type == null)
Line 77: Response.Redirect("IBlockTypeList.aspx");
Source File: c:\inetpub\wwwroot\bitrixnet\web\bitrix\admin\IBlockListAdmin.aspx.cs Line: 75
Stack Trace:
[SqlException (0x80131904): Invalid column name 'XmlId'.]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +212
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +245
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2811
System.Data.SqlClient.SqlDataReader.ConsumeMetaData() +58
System.Data.SqlClient.SqlDataReader.get_MetaData() +112
System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +6281668
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +6282737
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +424
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) +28
System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) +211
System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior) +87
Bitrix.DataLayer.BXSqlCommand.ExecuteReader(CommandBehavior behavior) +293
Bitrix.DataLayer.BXEntity`3.ExecuteSql(String commandText, SqlParameter[] parameters, BXQueryParams queryParams, IBXTextEncoder textEncoder, BXSchemeBase scheme, IBXEntityValueMap valueMap) +416
Bitrix.DataLayer.BXEntity`3.GetListInternal(BXFilter filter, BXOrderBy orderBy, BXSelect select, BXQueryParams queryParams, IBXTextEncoder textEncoder, BXSchemeBase scheme) +1274
Bitrix.DataLayer.BXEntity`3.GetByIdInternal(Object id, IBXTextEncoder textEncoder, BXSchemeBase scheme) +589
Bitrix.DataLayer.BXEntity`3.GetByIdInternal(Object id, IBXTextEncoder textEncoder) +16
Bitrix.DataLayer.BXEntity`3.GetById(Object id) +113
bitrix_admin_IBlockListAdmin.InitPage() in c:\inetpub\wwwroot\bitrixnet\web\bitrix\admin\IBlockListAdmin.aspx.cs:75
bitrix_admin_IBlockListAdmin.GridView1_GetSettingsQueryString(Object sender, BXGridViewGetSettingsQueryStringEventArgs e) in c:\inetpub\wwwroot\bitrixnet\web\bitrix\admin\IBlockListAdmin.aspx.cs:188
Bitrix.UI.BXGridView.ResolveSettingsQueryString() +108
Bitrix.UI.BXGridViewSettings.BuildProfileKey(BXGridView grid, String id) +61
Bitrix.UI.BXGridView.TryUserSettings() +73
Bitrix.UI.BXGridView.LoadUserSettings() +40
Bitrix.UI.BXGridView.OnInit(EventArgs e) +627
System.Web.UI.Control.InitRecursive(Control namingContainer) +143
System.Web.UI.Control.InitRecursive(Control namingContainer) +391
System.Web.UI.Control.InitRecursive(Control namingContainer) +391
System.Web.UI.Control.InitRecursive(Control namingContainer) +391
System.Web.UI.Control.InitRecursive(Control namingContainer) +391
System.Web.UI.Control.InitRecursive(Control namingContainer) +391
System.Web.UI.Control.InitRecursive(Control namingContainer) +391
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1477
Version Information: Microsoft .NET Framework Version:2.0.50727.4927; ASP.NET Version:2.0.50727.4927
При этом если Контент-менеджер зайдёт через публичную часть, "редактирование", и нажмёт на пиктограмме "добавить", то благополучно добавит новость... Т.е. проблема именно в админке.
Решается довольно просто с помощью следующего запроса к MS SQL базе данных:
Код
IF OBJECT_ID('dbo.b_IBlockType', 'U') IS NOT NULL
AND NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_SCHEMA+'.' = 'dbo.'
AND TABLE_NAME='b_IBlockType'
AND COLUMN_NAME='XmlId' )
ALTER TABLE dbo.b_IBlockType
ADD XmlId NVARCHAR(255)
Как говорится, счастье где-то близко!
проблема разворачива 1С-Битрикс на хостинге мастерхоста. ASP.NET версия, я в шоке. может что подскажете?
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
28.03.2011 18:21:53
Надежда, я крайне извиняюсь!
Но пожалуйста поймите и вы меня:
скоро у меня отпуск - надо закрыть все дела
конец квартала
пытаемся заключать партнёрский договор на продажу продукции ESET и Microsoft. В списке потенциальных партнёров из числа дистрибуторов: Монт и 1С. Так же возможно постучимся к RRС, но пока закинули удочку к другим.
У вас есть конкретные вопросы по ASP.NET?
Есть желание записать подксат по разворачиванию 1С-Битрикс ASP.NET на Windows Server 2008R2 Web Edition.
Однако, как вы можете видеть у нас такое громадьё планов, что очень сложно всё быстро реализовать.
403 (не хватает уровня доступа) при запуске 1C-Bitrix ASP.NET, как заставить битрикс работать?
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
27.03.2011 18:45:49
Собственно этот пост - первый в серии публикаций посвящённых решению тех или иных технических проблем, возникших перед нами в процессе установки и настройки 1С-Битрикс ASP.NET версии на виртуальном сервере. Я буду публиковать проблему, симптомы, что хотелось бы увидеть и метод решения.
Сперва не коннектилась база данных, однако с этой бедой справились и возникла другая - всё залили, замучились, всё работает, хотели начать нормальную разработку, но для этого не удобно пользоваться удалённым рабочим столом к серверу и localhost разрабатывать сайт - решили на IP повесить его и делать удалённо.
в настройках IIS для сайта привязали пустой хост-хидер (делается в "bindings" -> в свойствах не вписывать имя, выбрать IP-адрес).
Тогда сайт В ТЕОРИИ будет доступен снаружи по IP-адресу (файрвол настроен верно. даже если его отключить вовсе на дальнейший результат ничего не влияет)
И тут начинается самое неприятное. Заходим по IP, странца долго грузится и выдаёт:
Код
[COLOR=#FF0033]403 - Forbidden: Access is denied.[/COLOR]
You do not have permission to view this directory or page using the credentials that you supplied.
техподдержка хостера ответила следующее:
Цитата
такая ошибка говорит о том, что недостаточно прав на директорию, к которой привязан сайт.
Проверьте права доступа к папке, являющейся корневой для сайта - нужно, чтобы пользователь, под которым работает сайт, имел права на доступ к этой директории.
Вроде следовал инструкции по установке битрикс, так в чём же беда и как её исправить?
Дело всё в том, что сайт изначально располагался у нас в подпапке /BitDotNet/ и при прямом обращении по IP (195.128.127.97, кстати на котором сейчас висит наш проект lamaportal.ru) мы получали 403 ошибку (т.к. действительно у приложения не было прав на доступ к файлам вне папки web). 195.128.127.97/BitDotNet/ при этом открывался нормально.
Удалили дочернее приложение BitDotNet через IIS Manager и настроиваем корневое приложение на папку web.
После этого открываем файл web.config и заменил там строку
Чтобы авторизационные cookie не привязывались к папке /BitDotNet
После этого все стало открываться нормально по 195.128.127.97
Данная задача актуально исключительно до тех пор пока ваш проект находится в стадии разработки и вы не привязали его к какому-то домену. Когда же вы начнёте разбираться с доменами - там возникнут другие проблемы, о которых в отдельном посте.
Microsoft IT bonus - присоединяйтесь!
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
27.03.2011 18:29:10
Дорогие друзья!
Я являюсь участником программы IT bonus по поощрению технических специалистов Microsoft.
Что такое ITBonus? Это клуб экспертов по технологиям Microsoft, цель которого - нести знания в массы технических специалистов.
И сегодня я хотел бы пригласить Вас, дорогие друзья в эту программу. Как в настоящий момент я являюсь владельцем 3 инвайтов ITBonus и готов ими поделиться с самыми активными и опытными участниками нашего форума!
Публикуйте интересные материалы, задавайте актуальные вопросы или консультируйте других участников форума и вы получите приглашение в данную бонусную программу.
Что это вам даст?
1) по итогам каждого месяца определяются 10 победителей, которые получают ценные призы:
1-ое место: Оплата участия, дороги и проживания на конференции Платформа 2011(однократно)/Поездка на MVP Open Days (однократно, только для MVP)/игровой ноутбук/Оплаченное обучение в УЦ SoftLine по любой технологии Microsoft (кроме Dynamics CRM, Axapta, Navision).
2-3 места: Оплата участия в конференции Платформа 2011 без дороги и проживания(однократно)/ Оплаченное обучение в УЦ SoftLine по любой технологии Microsoft (кроме Dynamics CRM, Axapta, Navision)/нетбук.
4-6 места: Внешний жесткий диск на 500 гигабайт и бокал Microsoft.
7-10 места Флешка на 32 гигабайта и бубен.
2) По итогам полугодия определяются призёры на основе полученных за полгода баллов (бонусных миль по аналогии с авиа перелётами):
25 000 – подписка TechNet и футболка,
50 000 – GPS-навигатор и бокал,
150 000 – смартфон, бубен, и статуэтка «Бронза»
250 000 – статуэтка «Серебро» и по выбору: оплата участия в конференции TechEd без дороги и проживания, оплата обучения в УЦ SoftLine по любой технологии Microsoft (кроме Dynamics CRM, Axapta, Navision), ноутбук
400 000 – Оплата участия, проезда и проживания на конференции TechEd и статуэтка «Золото»
+ существуют ещё масса призов и акций для участников программы, о которых я расскажу каждому принятому мною лично участнику.
Не говоря о том, что это прекрасный шанс пообщаться и познакомиться с другими айти-профессионалами, мне кажется, инвайт на ITBonus может быть и хорошим материальным призом для любого из вас!
Чем лучше сайт на ASP.NET
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
27.03.2011 18:14:49
наши проекты на 1C-Bitrix ASP.NET:
equipportal.ru
lamaportal.ru Два информационных портала новости + статьи + блоги + форумы. Минимальная кастомизация затронула представление. Логику вывода тех или иных компонент не кастомизировали вовсе.
Чужие проекты на 1C-Bitrix ASP.NET (небольшой перечень): cnti.vrn.ru
585585.ru
trafinsp.com
softrust.ru
gotdotnet.ru
К сожалению у 1С-Битрикс ASP.NET платформы действительно пока нет стандартных инструментов бэкапирования и переноса. Я говорю пока потому, что в апреле-мае нас скорее всего ожидает релиз следующей версии Битрикс, вслед за php версией и корпоративным порталом. Я надеюсь, что данный функционал в ней наконец появится.
До тех пор вы можете бекапироваться самостоятельно. В принципе это не так уж сложно. Вам нужно лишь сделать отдельно бэкап двух составных частей сайта:
файловой структуры. Для этого подойдёт любой скрипт архивации.
Базы данных. В принципе вполне возможно выполнить с помощью встроенных опций MS SQL Server, либо вручную через тот же SQL Managment Studio.
Не забывайте о том, что на Windows сервере вы так же можете задать расписание выполнения тех или иных операций и тем самым автоматизировать процесс.
Если быть до конца честным - у нас этот процесс не автоматизирован - всё никак руки не дойдут.
Windows блокировщик - как победить?
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
27.03.2011 17:42:00
Цитата
Надежда пишет:
как быть, если друга с нодом нет, а доктор веб вирус не находит?
Попробовать Касперского?
Так же вы можете скачать другую, не имеющему нода пробную версию данного антивируса, обновить базы и создать по инструкции выше загрузочный диск.
Для более развернётого ответа уточните пожалуйста цель. Что вы хотите сделать? Восстановить систему, спасти информацию с жёстких дисков или просто восстановить работоспособность ПК? В последнем случае, можно ведь и вовсе отформатировать диск и поставить ОС заново. Вирусы точно так не просочатся...
[ Закрыто] Parking.ru - Windows хостинг, виртуальные и выделенные сервера
Администратор
Cообщений: 267Баллов: 2Регистрация: 12.01.2011
27.03.2011 15:08:32
Цитата
Надежда пишет:
1) так же хотелось бы получить приблизительную вилку. В настоящий момент мы не заинтересованы ни в каких услугах кроме подбора тарифного плана.
В рамках on-line консультации мы сделаем это бесплатно. Для получения отдельных более точных рекомендаций - напишите на мне в личку или на почту адрес своего проекта.
Цитата
Надежда пишет:
2) можете примерно определить уровень технических характеристик, необходимых для функционирования Windows Server 2008 R2 и 1С-Битрикс ASP.NET (2 сайта: кропоративный и интернет-магазин)
Согласно официальным данным технические требования Windows Server 2008 R2:
Для работы с Windows Server 2008 R2 компьютер должен удовлетворять следующим требованиям*
Процессор - 1,4 ГГц (процессор с архитектурой x64).
Примечание. Для работы с Windows Server 2008 R2 for Itanium-Based Systems необходим процессор Intel Itanium 2.
Оперативная Память - Минимальный объем: 512 МБ.
Максимальный объем: Foundation — 8 ГБ, Standard — 32 ГБ, Enterprise, Datacenter и Itanium-Based Systems — 2 ТБ.
Требования к свободному пространству на диске - Минимальный объем: 32 ГБ.
Foundation — 10 ГБ или более.
Примечание. На компьютерах, оснащенных более чем 16 ГБ ОЗУ, потребуется больше места на диске для файлов подкачки, спящего режима и дампа памяти.
Монитор - Монитор с разрешением Super VGA (800x600) или более высоким.
Прочее - Дисковод для DVD-дисков, клавиатура и мышь, доступ в Интернет (может предоставляться за дополнительную плату).
* Фактические требования к системе зависят от конфигурации системы и от выбранных для установки приложений и компонентов. Производительность процессора зависит не только от его тактовой частоты, но и от количества ядер и объема кеша процессора. Необходимый объем свободного дискового пространства в системном разделе указан приблизительно. В случае установки по сети может потребоваться дополнительное место на диске.
Однако на практике нам удавалось на виртуальной машине под управлением Windows Server 2008 R2 Web Edition с оперативной памятью 256Мб и 20Гб HDD запустить IIS и 2 сайта на 1С-Битрикс ASP.NET! Правда простой сервиса в силу повисания сервера баз данных составлял до 10%.
ИТОГО: В качестве рекомендации можем посоветовать виртуальную машину с ОЗУ 512+ Мб и жёстким диском 20+Гб Примером такого тарифа от Паркинг может является HyperCMS Half - - виртуальный сервер на основе Windows Server R2 2008 Web Edition + в комплекте мы получаете SQL Managment Studio и MsSQL Server Express, чего достаточно для установки 1C-Bitrix ASP.NET.