t3s

Рейтинг
67
Регистрация
13.04.2008
Z-Style:
Задался вопросом, как можно защитить сайт от клонирования, "привязав" его к домену. Необходимо сделать так, чтобы при переносе сайта на другой домен он не работал. Реально ли это реализовать?

правильно поставленный вопрос содержит половину ответа, в вашем случае следовало уточнить что именно требуется защитить - контент или скрипты

контент защитить нереально, к тем вариантам что описал LEOnidUKG можно добавить третий, который имеет гораздо больше шансов:

3. прилетят инопланетяне в 2012-ом году и накажут обидчика

всякие айпишники и баны абсолютно не повлияют на более-менее адекватного парсера... к примеру существуют прокси, кроме того парсить можно не ваш сайт напрямую а кеш поисковиков или веб-архив - вы же не будете блокировать айпи яндекса?

что касается защиты скриптов - тут перспектива более радужная, хотя тоже не 100%-ая... для начала вбейте в гугле слово "обфускатор", посмотрите как защищают свой код другие разработчики... если есть деньги на платные решения - можете воспользоваться ними, например zend, а еще лучше работает связка обфускация+кодирование

хоть это и не 100% гарантия (100% не дает даже Бог, поскольку существует Дьявол) но жизнь злоумышленнику может усложнить изрядно

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

ммм... поясните что значит "только один"?

вообще-то это от шаблона зависит - бывают такие, где и ни одного не всунешь но обычно любой современный шаблон не имеет на ограничений... если хостер добрый и не прогонит - ставьте сколько угодно

возможно вы имеете ввиду не виджет а место под виджет? к примеру один слева, другой справа, третий в футере и т.д.? если да, то как правило это определяется в файле functions.php вашего шаблона

посмотрите есть ли там строка вроде

if ( function_exists('register_sidebar') ) 

если после нее идет просто register_sidebar(array( то значит место для сайдбара предусмотрено лишь одно

если есть к примеру

register_sidebar(array('name'=>'sidebar_left'
и
register_sidebar(array('name'=>'sidebar_right'

(или другие подобные, например для футера или для шапки) - значит таких мест несколько, в адмнике вы их будете видеть как sidebar_left и sidebar_right соответственно

если хотите поменять расположение виджетов, просто перенесите конструкцию вида

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar('sidebar_left') ) : else : ?>

тут что-нибудь, что будет выводиться если не активирован ни один виджет
<?php endif; ?>

соответственно если хотите добавить место для виджетов, к примеру в футере то ставите в файл functions.php после строки

if ( function_exists('register_sidebar') ) 
примерно такое:

register_sidebar(array('name'=>'sidebar_footer',

'before_widget' => '',
'after_widget' => '</div>',
'before_title' => '<h3>',
'after_title' => '</h3><div>',
));

а в файле footer.php в том месте где планируете выводить виджеты вот такое:

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar('sidebar_footer') ) : else : ?>

черт возьми, забыл включить виджет для футера ))
<?php endif; ?>
JackHammer:
Озвучив тематику я расчитывал, что этого в принципе вполне достаточно, чтобы понять какой БАЗОВЫЙ функционал требуется, так как многие видели и возможно реализовывали подобные проекты (порталы стройка/ремонт) и в большинстве своем на таких сайтах этот функционал почти одинаков, за исключением деталей. Понятно, что есть детали которые реализуются индивидуально, но пока речь идет именно о базовом функционале.

п.с. В большей степени хотелось бы услышать рекоммендации людей, которые прошли через подобные проекты.

идеальной ЦМС не существует (с) - мое ))

ни для чего, в том числе и для порталов

ТС, вам уже ответили что тематика и функционал - это абсолютно разные вещи...

да и портал - понятие слишком растяжимое, для кого-то порталом может быть обычный варезник, а кто-то считает что tut.by недостоин считаться порталом только из-за того что там знакомства сделаны на поддомене

хотя некоторые характерные вещи у "типичных" порталов все-же есть - помимо новостной ленты это каталоги, обьявления и некоторые другие... советую вам копать именно в этом направлении - определите, так сказать "фишку" вашего проекта и и сходя из нее подбирайте нужные модули/плагины/компоненты... допустим нужен каталог - попробуйте каталоги от нескольких движков, нужно еще что-то - сравните как это "что-то" реализовано в нескольких движках...

simbeer:

А еще пока топик похож на набор постов...

I like to nulled nulled :)

Bars007:
В отношении меня человек все обязательства выполнил, в том числе после того как был забанен.

справедливости ради сообщаю что хоть ТС и не выполнил свои обязательства, но деньги за невыполненный заказ вернул, даже вроде как немного больше (я платил wmz, он вернул wmr, разница в курсах и все такое)

так что финансовых претензий лично у меня к ТС нету

правда это было сделано лишь после подачи иска в арбитраж вебмани

t3s:
поскольку на момент заказа не было сатов в индексе, забронировал на пробу один сат с нужными мне параметрами... после того как попадет в индекс и сапу постараюсь не забыть отписаться...
внушило доверие то, ТС согласился вернуть деньги если через месяц заказ не будет выполнен (т.е. не будет в индексе или сапе)

отписываюсь...

сата нету, денег нету, ТС-а в аське нету, ТС-а на форуме тоже нету...

выводы делайте сами

подскажите, можно ли узнать причину по которой он забанен на форуме?

задача стоит именно в таком порядке, ребром - сначала уменьшить размер а потом сделать квадратными, добавив белый вместо пустоты?

вариант когда делаем картинки квадратными, просто обрезав лишнее не подойдет?

если подойдет и немного дружите с PHP, ловите (пример не мой но рабочий, требуется библиотека GD):


<?php

define('SOURCE', 'original.jpg'); // исходный файл
define('TARGET', 'myimage.jpg'); // имя результата
define('NEWX', 500); // требуемая ширина
define('NEWY', 500); // требуемая высота

// Определяем размер изображения с помощью функции getimagesize:
$size = getimagesize(SOURCE);
// Функция getimagesize, требуя в качестве своего параметра имя файла,
// возвращает массив, содержащий (помимо прочего, о чем можно прочитать
// в документации), ширину - $size[0] - и высоту - $size[1] -
// указанного изображения. Кстати, для ее использования не требуется наличие
// библиотеки GD, так как она работает непосредственно с заголовками
// графических файлов. В случае, если формат файла не распознан, getimagesize
// возвращает false:
if ($size === false) die ('Bad image file!');

// Читаем в память JPEG-файл с помощью функции imagecreatefromjpeg:
$source = imagecreatefromjpeg(SOURCE)
or die('Cannot load original JPEG');

// Создаем новое изображение
$target = imagecreatetruecolor(NEWX, NEWY);

// Копируем существующее изображение в новое с изменением размера:
imagecopyresampled(
$target, // Идентификатор нового изображения
$source, // Идентификатор исходного изображения
0,0, // Координаты (x,y) верхнего левого угла
// в новом изображении
0,0, // Координаты (x,y) верхнего левого угла копируемого
// блока существующего изображения
NEWX, // Новая ширина копируемого блока
NEWY, // Новая высота копируемого блока
$size[0], // Ширина исходного копируемого блока
$size[1] // Высота исходного копируемого блока
);

// Сохраняем результат в JPEG-файле:
// Функции генерации графических файлов, такие как imagejpeg,
// могут выводить результат своей работы не только в броузер,
// но и в файл. Для этого следует указать имя файла в необязательном
// втором параметре.
// Именно функция imagejpeg имеет и третий необязательный параметр -
// качество изображения. хз почему, привычная цифра - 80.
imagejpeg($target, TARGET, 80);

// Как всегда, не забываем:
imagedestroy($target);
imagedestroy($source);
?>

просто запустите в цикле, указав в качестве входных файлов все те что находятся в нужной вам папке, а в качестве исходных - myimage1, myimage2 и т.д.

если есть лишнее время (и если имена картинок как-то влияют на ранжирование) то вместо myimage можна дергать из базы название поста и соответственно сохранять картинку как imya_novosti.jpg

2. Все на русском показывается, кроме заголовков, названия страниц и названия виджетов

заголовки сайта или материалов?

дело в том, что за заголовок сайта, название страницы (title) и некоторые другие вещи отвечает файл темы header.php

за виджеты и вообще за все что находится в сайдбаре(сайдбарах) обычно отвечает sidebar.php

просто проверьте кодировку данных файлов - и если она отличается от UTF-8, конвертируйте в ютф каким-нить notepad2 или notepad++

если дружите с программированием и для вас ключи в урле важнее чем возросшая нагрузка, попробуйте такой вариант:

хттп://сайт.ком/категорияй-категория2/товар

muratti:
Если изображений на сервере будет 100500 тыщ, я так понимаю, эта проверка будет жесткая? :D

если их действительно 100500 тыщ, то логичным решением будет еще на этапе загрузки делить картинки по категориям - типа, рыжие отдельно, блондинки отдельно, брюнетки отдельно

вы бы уточнили задачу т.к. если смысл "просто не допустить дублей потому что так захотелось" то согласен с мнением LEOnidUKG

OMG. неужели вас в гугле забанили?

функция wp_list_categories возвращает результаты, обернутые в li

просто используйте ее внутри списка, вот так

<ul>

<?php wp_list_categories('title_li=<h3>name</h3>&orderby=name&include=5,6,7'); ?>
</ul>

а можете покурить мануал вот здесь

Всего: 204