Двигатель сетевого прогресса

Автор работы: Пользователь скрыл имя, 07 Января 2011 в 14:33, статья

Описание

Одно из двух — или я постарел, или народ пошел какой-то привередливый! Раньше поставишь на страничку веб-сайта пару картинок поярче, и все довольны, всем приятно. А теперь что? Если на твоем сайте нет всяких модных штучек — не просто мимо пройдут, а еще и постараются съязвить в адрес автора: мол, держи свое убогое дитя дома, в чулане, не смущай народ.

Работа состоит из  1 файл

Двигатель сетевого прогресса (PHP Nuke).doc

— 473.50 Кб (Скачать документ)
Рис. 6. Изменить копирайты  
можно в БД сайта.
 
 

    На сайтах, посвященных  PHP-Nuke, лежит довольно много блоков  разного назначения. Может возникнуть  вопрос — каких таких блоков? Мы же всегда вручную вводили  в форму содержимое блока из КП сайта. И это срабатывало. Однако бывают случаи, когда одного голого HTML и Java Script для блока недостаточно. Поэтому присмотримся к форме для создания блоков повнимательнее. В ее верхней части вы обнаружите выпадающий список Имя файла. С помощью него можно выбрать один из файлов, которые расположены в папке blocks корневой папки сайта. В случае, если выбирается готовый блок из файла, поле с контентом будет проигнорировано. 
    Одними из самых удобных и полезных являются блоки “последних сообщений с форума” и “последних файлов в архиве”. Первый уже есть в PHP-Nuke. Он реализован как файл block-Forums.php (присутствует в списке как Forums). Чтобы его подключить, выбираете файл, указываете название блока и его позицию. Операция завершается щелчком по кнопке Создать блок. Второй — представлен списком из десяти самых популярных файлов, что не есть хорошо. Гораздо удобнее использовать блок “последних файлов”. Его можно взять с нашего CD/DVD либо скачать с www.skoks.com.ru/nuke/. Архив содержит три файла: 
    readme.txt — описание; 
    block-Infodownloads — статическое отображение информации; 
    block-Infoscrolldownloads — отображение информации в виде бегущей строки (снизу вверх). 
    Скопируете последние два файла в папку blocks. Используя их, получаете возможность воспользоваться одним из этих блоков на выбор. 
    Сайт на основе PHP-Nuke обременен излишними копирайтами внизу каждой страницы. Часть из них можно убрать в КП через основные настройки (там, куда мы вставляли код счетчиков). Но некоторая, и совсем немалая, часть все равно остается. Исправить положение можно в БД. Для этого заходим в phpMyAdmin (http://localhost/phpMyAdmin/) и слева выбираем БД nuke. В базе ищем таблицу nuke_config, жмем кнопку Обзор, а затем на кнопочку Редактировать слева от единственной записи в таблице. В открывшемся окне с множеством полей ввода переходим к предпоследнему. Оно называется copyright. Изменяем его значение на желаемое. Оговорюсь, эта инструкция приведена только для того, чтобы вы смогли улучшить внешний вид сайта. Копирайт “Powered by PHP-Nuke” оставить все же надо. Хотя бы в благодарность создателям движка, которые предоставили вам его совершенно бесплатно. 
 
   
Предусмотрительная безопасность 
   
Многие винят движок в чрезмерной “дырявости”, хотя уязвимость сайта во многом зависит от вас самих. Несложные манипуляции обезопасят ваше творение от множества возможных неприятностей. 
    Как это ни банально, очень часто первым и главным рубежом обороны становится пароль доступа. Это ключ к вашему ресурсу. Чем он проще, тем легче подобрать отмычку! Придумывайте нечто оригинальное, например “Паp0лИ_п03ак0vыРисТее”. Многие ставят одно и то же буквенно-цифровое сочетание на FTP,

Рис. 7. Если убрать  
индексный файл, будет  
отображаться его  
содержимое в виде  
таблицы файлов.
 

свою админскую  запись и другие материалы сайта. Ни в коем случае так не поступайте! Подобрав (или украв) один пароль, взломщик получит полный доступ к сайту. 
    С развитием проекта наверняка появятся новые авторы. Чтобы позволить им размещать статьи, добавлять новые опросы, их придется добавить к администраторам сайта. Для этого служит пункт КП Админы. В нем вы можете создать нового администратора и определить ему права доступа. Будьте внимательны, не давайте никому прав Суперпользователя. Ограничьтесь указанием разделов, которыми данный конкретный человек может управлять. Только советую не говорить ему об ограничениях... Почему-то “ущемление” в правах вызывает ненужные дебаты и недопонимания. Каждый раз ввязываться в длинные разбирательства на тему “Ты меня уважаешь?” — себе дороже. 
    На многих сайтах в последнее время стали использовать картинки с секретным кодом (на рябом фоне рисунка видны сочетания букв или цифр, которые посетитель должен ввести в специальную форму). Это нововведение предназначено для блокировки регистрации на сайтах различных ботов (программных автоматов). Робот просто не видит никаких цифр, поэтому не может правильно заполнить нужные поля. Соответственно, ему не удается, например, открыть массу новых ящиков электронной почты. Инструмент спамера вынужден уйти с такого сайта, не выполнив предназначения. Фактически, это проверка, кем на самом деле является пользователь — программой или человеком. Кроме того, такой подход усложняет подбор паролей к аккаунтам. В PHP-Nuke тоже есть такая возможность. Ее несложно активировать. Нужно открыть файл config.php, находящийся в корне сайта, и настроить в нем переменную $gfx_chk. Ее параметрами являются цифры от 0 до 7. Они имеют следующие значения: 
    0 — никогда не выводить секретный код; 
    1 — только для авторизации администраторов; 
    2 — только для авторизации пользователя; 
    3 — только при регистрации нового пользователя; 
    4 — для авторизации и регистрации пользователя; 
    5 — для авторизации пользователя и администратора; 
    6 — для регистрации пользователя и администратора; 
    7 — всегда выводить. 
    Бесспорно, такой подход имеет как свои плюсы, так и минусы. Во-первых, бывают случаи, когда по ряду причин код просто не отображается (плохой коннект пользователя, загруженность сервера, отключение картинок в браузере). Некоторых здорово раздражает, если им приходится вводить его слишком часто. Практика показывает, что оптимальным будет использование кода только при регистрации нового пользователя. Если же поступают многочисленные жалобы на недоступность кода, то его стоит вообще отключить. 
    При создании новых папок создавайте в них файл index.html. Эта страничка может быть совершенно пустой либо с переназначением на главную страницу сайта. Если папка не содержит файла индексации, то открывшим ее автоматически будут показаны названия всех файлов, которые содержит папка. Незачем раскрывать структуру сайта. Часто этим очень интересуются хакеры. К тому же, там может находиться то, что вы вовсе не желаете показывать кому попало. Для организации переназначения файл index.html может содержать, например, следующий код: 
    <HTML> 
    <HEAD> 
    <TITLE>Здесь нет ничего интересного</TITLE> 
    <META http-equiv=“refresh” content=“1;url=http://www.nuke.igromania.ru/index.php”> 
    </HEAD> 
    <BODY> 
    Перейдите на одну из страниц сайта! <BR> 
    Например на <A href=“http://www.nuke.igromania.ru/index.php”>главную</A> 
    </BODY> 
    </HTML> 
   
Обязательно проверяйте поступающие от пользователей файлы. Мало ли что...

 Полезные ссылки 
   
www.skoks.com.ru/nuke — файлы к статьям этого цикла; 
    www.skoks.com.ru/next — голосование по материалам о PHP-Nuke; 
   
http://forum.ru-board.com/topic.cgi?forum=28&topic=28#1 — постоянно пополняющийся список галерей тем оформления для движка; 
   
http://clantemplates.com — множество игровых шаблонов; 
   
www.rus-phpnuke.com — русский сайт PHP-Nuke; 
   
www.phpnuke.org — официальный сайт разработчиков; 
   
www.evistudio.com/ — дизайн студия, делающая темы для PHP-Nuke; 
    www.mtechik.net — дополнительные темы.

 
    
* * * 
   
Мы с вами прошли длинный путь создания “продвинутого” сайта на бесплатном сетевом двигателе PHP-Nuke. Конечно, что-то можно еще улучшать, менять, дополнять (совершенству предела нет). Но крепкая основа уже в любом случае заложена. Не бойтесь экспериментировать, устанавливать новые модули и темы оформления. Пока вы работаете с локальным сайтом, все ваши неудачи — дело сугубо интимное. Сохраняйтесь почаще (делайте бэкапы БД). И да пребудет с вами сила PHP-Nuke! 
    Не забывайте, что все вопросы вы можете задать на нашем форуме и отправить непосредственно на почту рубрики —
internet@igromania.ru.

Двигатель сетевого прогресса. Как сделать сайт на движке PHP Nuke, FAQ

Двигатель сетевого прогресса 
Ответы на часто задаваемые вопросы 

Автор: 
Александр Колосов 
E-MAIL РУБРИКИ:
INTERNET@IGROMANIA.RU

 
    Строительство мощного сайта  на бесплатном сетевом движке  PNP-Nuke — дело, доступное почти каждому. Хотя, может быть, для некоторых поначалу все выглядело довольно сложно. Большинство из вас справилось с поставленной задачей. Однако некоторые моменты вызвали ряд вопросов, на которые мы оперативно отвечали по электронной почте, на форуме нашего журнала и в организованной “Горячей линии” на
www.skoks.com.ru/nuke. Поскольку многие пробовали себя в качестве веб-дизайнеров впервые в жизни, то и вопросы были разной степени сложности. Сегодня мы ответим на самые популярные из них, поступившие по материалам первой и второй статьи цикла.

Рис. 1. Так должен выглядеть  
config.php, если вы точно  
следовали нашим указаниям.
 
 

    [В]: Я все сделал, как написано в статье, но у меня отображается пустая страница. 
    [О]:
Так начинаются приблизительно 90% вопросов. И в 99% это объясняется неправильной настройкой файла конфигурации config.php (см. рис. 1). 
    Посему рассмотрим более подробно, что это такое. В файле находятся основные настройки сайта, необходимые для взаимодействия с базой данных (далее БД). В него надо внести следующие данные (если вы делали ВСЕ, как рекомендовано в нашем руководстве): 
    $dbhost = “localhost”; 
    $dbuname = “root”; 
    $dbpass = ““; 
    $dbname = “nuke”; 
    $prefix = “nuke”; 
    Рассмотрим, что означает каждый из этих параметров. 
    $dbhost это хост БД. Не вдаваясь в подробности, нужно просто написать в этой строчке слово localhost. Когда будете выкладывать сайт в интернет, администратор сообщит новое значение для хоста БД. 
    $dbuname имя пользователя БД. В “Денвер-2” по умолчанию написано имя пользователя root. Аналогично — то же самое имя задается и в PNP-Nuke (при желании нового пользователя можно создать, используя phpMyAdmin в разделе Привилегии). 
    $dbpass — пароль для доступа к БД. Пароль задается при регистрации нового пользователя (см. выше). По умолчанию для root пароль не задан! Его поле остается пустым.

Рис. 2. Не хочет IE ничего нам  
показывать, а заставим...
 
 

    $dbname — имя БД. Его мы указываем при создании новой БД в phpMyAdmin (этот процесс описан в первой статье). Если вы задали имя, отличное от nuke (как в статье), например supersite или еще как-нибудь, то именно это название должно быть записано у вас в файле конфигурации config.php
    $prefix — префикс для таблиц БД. Префикс — это приставка у названий таблиц. Они нужны для того, чтобы разные таблицы не получили одни и те же данные. Предположим, у вас установлен PHP Nuke и форум phpBB без префиксов. Тогда у вас по умолчанию должны появиться две таблицы с одинаковым именем — users. При этом их нормальная работа — невозможна! Вместо двух окажется только одна таблица, к которой и будут направлены все обращения. Благодаря префиксам можно избежать подобной ситуации. Если установить для PNP-Nuke префикс nuke_, а для phpBB — forum_, то возможность пересекающихся названий будет значительно снижена. В случае, который мы рассматривали выше, автоматически будут образованы таблицы nuke_users и forum_users (users теперь является только частью имени). 
    Некоторые после регистрации админа на сайте меняют данные в конфигурационном файле. Этого делать нельзя! Определение пользователя БД и админа сайта — две абсолютно разные вещи. Данные об админах (как, впрочем, и о юзерах) хранятся в БД. 
    У особо несчастливых читателей движок не заработал с первого раза даже при правильных настройках. Это уже никак не связано с самим движком и полностью лежит на совести операционной системы. Пути Windows неисповедимы. 
    При таких печальных обстоятельствах нужно: 
    — перезагрузить компьютер; 
    — удалить “Денвер-2” (подробности см. ниже); 
    — снова перезагрузить компьютер; 
    — заново установить “Денвер-2”; 
    — повторить все, что было написано в статье по настройке сайта.

Рис. 3. Проверяем службу DNS  
на активность.
 
 

    Ошибки подобного  рода наполовину относятся к  области глубокой метафизики. Поэтому  отдельные специалисты-”нюководы”  рекомендуют выполнять указанный  порядок действий после соответствующей  подготовки (например, натянув на голову красную вязаную шапочку с помпоном). По ходу операции будьте внимательны и контролируйте свои действия (используя в момент перезагрузки позу лотоса и энергичное натирание чакр руками). 
    [В]: Как правильно удалять сервер? 
    [О]:
Чтобы удалить сервер, нужно его остановить (Stop servers), снести папку WebServers и перезагрузить компьютер. После этих несложных манипуляций вы избавитесь как от сервера, так и от виртуального диска, на котором он находился. Если при последующей загрузке компьютера система сообщает, что не найдено одно из приложений (на которое ссылается ярлык), следует посетить список автозагрузки и удалить ярлык “Денвер-2”. 
    [В]: Я установил “Денвер”, но даже после запуска сервера www.nuke.igromania.ru остается недоступен как localhost, так и другие локальные домены. 
    [О]:
В данной проблеме снова виновата система Windows... Вернее, ее неправильные настройки. Поэтому не стоит сразу ругать Билла Гейтса. 
    Причин может быть несколько... Рассмотрим проблемы и методы их устранения по порядку. 
    1. У вас отключена служба “DNS-клиент”. Идем в Панель управления/Администрирование/Службы и смотрим на “служебное состояние”. Должно быть отмечено Работает (см. рис. 2). Если служба отключена, то подключаем ее и радуемся устранению проблемы. Оговорюсь, что сказанное актуально для

Рис. 4. Избавимся от  
прокси-сервера.
 

систем семейства NT (Win NT, 2000, XP, 2003). 
    2. Вы работаете в автономном режиме. Когда Internet Explorer (далее IE) открывает страницы не из Сети (или с локально сервера), а из своего кэша. Грубо говоря, кэш — это папка, куда IE складывает ресурсы открываемых страниц, включая картинки, flash и прочее. Автономный режим вы могли включить сами по настойчивой просьбе IE, который ошибочно выдал сообщение: “Подключение к интернету сейчас невозможно. Чтобы просмотреть файлы интернета, сохраненные на вашем компьютере, выберите Работать автономно” (см. рис. 1). Избавиться от навязчивого сервиса, не переходя в автономный режим и не подключаясь к Сети, можно через меню IE — Сервис/Свойства обозревателя/Подключение. В разделе Настройка удаленного доступа отметьте пункт Никогда не использовать
    3. Причиной является включенный прокси-сервер. Зачастую в Windows по умолчанию включен прокси-сервер, из-за которого и не работает наш сайт. Чтобы его отключить, отправляемся в меню IE — Сервис/Свойства обозревателя/Подключения/ Настройка/Дополнительно — и отключаем галочку Использовать прокси-сервер... 
    Многие версии Windows поставляются с включенным по умолчанию прокси-сервером. Это может вызвать некоторые проблемы при работе с “Денвер-2” (впрочем, легко разрешимые). 
    Если после запуска “Денвер-2” страница http://localhost не работает, вероятнее всего, вам нужно отключить прокси-сервер в настройках браузера (как было описано выше, в пункте 3). Для “простых” хостов (вроде localhost, test, dklab) обычно достаточно установки флажка Не использовать прокси-сервер для локальных адресов (вкладка Свойства обозревателя/Подключение/Настройка сети/Дополнительно).

Информация о работе Двигатель сетевого прогресса