close

Вход

Забыли?

вход по аккаунту

?

linux

код для вставки
У «арийский государственный университет»
Создание сайта в среде linux.
2010 год
Создание сайта в среде linux.
астройка ubuntu 10.04 под web
-
разработку.
Для разработки сайта мной был выбран ubuntu 10.
04, установка которого производилась с LiveCD, ISO образ которого был скачен с официального сайта ( http://ubuntu.ru/
). Но для создания сайта и эффективной работы одной ОС linux недостаточно, необходимо установить ПО кото
рое существенно облегчит процесс работы. Для установки ПО в linux может быть использована два метод: через «терминал» и через «Центр приложений Ubuntu». Принципы работы «терминала» мы рассмотрим на примере установки так необходимых нам в работе: apa
che2 + php + mysql + phpmyadmin. Для установки открываем «Приложения»
-
> «Стандартные»
-
> «Терминал» и выполняем:
sudo apt
-
get install apache2
Все зависимости подтянутся автоматически. Для запуска и останова Apache2 используем соответственно:
sudo invoke
-
rc
.d apache2 start
sudo invoke
-
rc.d apache2 stop
После запуска Apache2 можно открыть браузер и проверить работу сервера перейдя на страницу http://localhost
Устанавливаем PHP
В терминале выполняем:
sudo apt
-
get install php5 libapache2
-
mod
-
php5
и
перезапускае
м
сервер
командой
:
sudo invoke
-
rc.d apache2 restart
Устанавливаем MySQL
Это так же не сложно, как и предыдущие шаги. В
терминале
выполняем
:
sudo apt
-
get install mysql
-
server
Далее (
важно
) изменяем пароль root
к серверу БД:
sudo mysqladmin -
u root password новый
_
пароль
Перезапускаем
Apache2:
sudo invoke
-
rc.d apache2 restart
Все должно работать. Для проверки PHP можно сделать следующее:
sudo nano /var/www/test.php
или
sudo gedit /var/www/test.php
Пишем и сохраняем:
<?php phpinfo(); ?>
В браузере переходим по ссылке http://localhost/test.php, где вы увидите всю информацию о PHP.
Для удобной работы с базами данных ставим phpMyAdmin:
sudo apt
-
get install libapache2
-
mod
-
auth
-
mysql php5
-
mysql phpmyadmin
Все готово. Если возникнут проблемы с phpMyAdmin –
перезапуска
ем Apache.
Ну вот мы и установили свой web
-
server, но этого еще не вс, также нам необходимо установить какой либо файловый менеджер для удобной работы с файлами. В ubuntu существует большое количество файловых менеджеров, но я использую «gnome commander».
Для установки «gnome commander» откроем «Приложения»
-
>«Центр приложений Ubuntu» и в окне поиска приложений набираем «gnome commander» после чего в открывшемся списке приложений выбираем «gnome commander | двух панельный файловый менеджер» и нажимаем «ус
тановить». После завершения установки открываем «Приложения»
-
> «Стандартные»
-
> «GNOME Commander»
и переходим в каталог /var/www/ это и есть то место где будет лежать ваш сайт, но пока изменение содержания этого каталога вам не доступно, если конечно вы н
е вошли под пользователем «root». Для того что изменить ситуацию достаточно вызвать «терминал» и выполнить в нем команду sudo chown -
R kondrat '/var/www' эта команда изменила права вашего пользователя на каталог /var/www и теперь вы можете свободно совер
шать в нем любые манипуляции с файлами. Теперь поговорим о программных средствах редактирования файлов в linux. Для начала установим через «Центр приложений Ubuntu» редактор графических изображений «GIMP».
Подробнее об этом графическом редакторе
, вы можете узнать на сайте www.progimp.ru
. Выберем и установим редактор кода нашего будущего сайт. Вы можете выбрать любой редактор из множества тех что существуют в linux, но я остановлюсь на редакторе «Geany» (
сайт проекта: http://www.geany.org/.
Для его установки в «терминале» вводится команда apt
-
get install geany. Финальным штрихом в нашем превращений нашего ubuntu -
обыкновенного в ubuntu
-
web
-
разработчика будет настройка браузера.
Для работы мы выберем mozilla firefox (обычно он входит в комплект установки ubuntu c liveCD) и дополняем его плагином «firebug» который позволяет редактировать, выполнять отладку и просматривать CSS, HTML и JavaScript в режиме реального времени.
Ну вот, среда для создания сайт
а готова и теперь можно переходить непосредственно к творчеству.
Создание сайта в среде ubuntu 10.04.
Собственно описание создания целого сайта я делать не стану, во первых это займет слишком много времени и места, а во вторых будет больше по
ходить на учебник по посвященный программированию, управлению БД, дизайну и еще множеству смежных с web
-
разработкой вещей. Вместо этого я опишу создания части сайта, это будет сервис позволяющий отправлять с сайта письма его администрации при этом текст пи
сьма, отправитель и тема письма также будет отображаться на странице с формой отправки писем. Сервис будет являть собой смесь сервисов «гостевая книга» и «связь с администрацией». Шаг 1.
Для начала разместим наш сайт в Linux.
Копируем файлы сайта в папку
/var/www при помощи gnom commander.
Импортируем БД через phpmyadmin.
Шаг 2.
Открываем файл config.php и изменяем ключевые константы для нашего сайта:
define("DB_USER", 'root'); -
пользователь БД
define("DB_PASSWORD", '****'); -
пароль пользователя БД
define("DB_NAME", 'first'); -
имя
БД
Добавляем константу в файл 'config.php':
define (''DB_TAB_M'','mail') ; -
константа означающая таблицу 'mail' в БД;
Создам таблицу 'mail' в нашей базе данных. Поля таблицы будут следующего вида
:
В поле «title» будут храниться заголовки сообщений;
В поле «name» будет хранится адрес отправителя;
В поле «texe» будет хранится текст сообщения;
Поле «id» является уникальным ключом для работы с записями хранящимися в таблице 'mail';
Шаг 3.
Открываем файл library.php (библиотека содержащая основные функции моего сайта).
Мы должны создать три функции: просмотра списка сообщений для посетителей сайта, просмотра списка сообщений для администрации сайта, удаления сообщений. Функция -
1: просмот
ра списка сообщений для посетителей сайта.
function see_mail() { openDB(); /*функция вызываемая из library.php и осуществляющая соединение с ДБ*/
$query = "SELECT `name`, `title`, `text` FROM `".DB_TAB_M."`"; /*запрос к БД на выборку имени отправителя, те
мы и текста всех писем из таблицы «mail» обозначенной в файле config.php как константа DB_TAB_M*/
$result = mysql_query($query) or die("Query failed"); /*отправка запроса к БД и получение результата*/
$mail=''; //создание переменной в которой будет список писем
if (mysql_num_rows($result)) { //если результат запроса не пустой
while ($row = mysql_fetch_assoc($result)) {//то пока есть элементы в результате запроса
$meil.='<b>Отправитель:</b>'.$row['name'].'<br /><b>Тема:</b>'.$row['title'].'<br /><b>Текст сообщения:</b>'.$row['text'].'<hr />';//присваивать их переменной $meil.="
\
r
\
n"; //в каждой строке последним присваивается символ перевода строки
} } return $meil; //возвращает список писем
} Функция -
2: просмотра списка сообщений для администрац
ии сайта.
Единственное отличие от Функции
-
1 заключается в том что в списке писем писем присутствует ссылка позволяющая удалить письмо.
<a href="admin.php?what=del_mail&id='.id_set($row['id']).'"><font face="Tahoma, Verdana, Arial" size="2" color="black">
УД
АЛИТЬ
</font></a>
Функция id_set () -
из файла library.php осуществляющая шифрование чисел, так как функция авторская и применена в нескольких реально действующих проектах ее синтаксис останется в секрете.
Функция -
3: удаления сообщений.
function Del_mail
($id) { $id=id_unset($id); //расшифровка id новости функцией id_unset() -
из файла library.php осуществляющей дешифровку чисел зашифрованных функция id_set ().
openDB(); /*функция вызываемая из library.php и осуществляющая соединение с ДБ*/
if($id==1) {
//если письмо имеет id=1 то удаление не производится return true; } else { //если письмо имеет id>1 то производится удаление письма
$query = "DELETE FROM `".DB_TAB_M."` WHERE `id`='".$id."' LIMIT 1"; /*запрос к БД на удаление письма с id = $id из таб
лицы «mail» обозначенной в файле config.php как константа DB_TAB_M*/
$result = mysql_query($query) or die("Query failed"); //
отправка
запроса
в
БД
} return true;
Шаг 4.
Создадим файл mail_ad.tpl который будет содержать то что увидит админ сайта перейдя на страницу работы с почтой. В нашем случае это require_once('library.php'); //подключение библиотеки функций
echo admin_see_mail(); //функция вывода списка писем для админа.
Шаг 5.
Создадим файл mail.php который будет обрабатывать отправку почты от посе
тителей сайта. require_once('library.php'); //подключение библиотеки функций
if (!array_key_exists('head', $_POST)) $head = ''; //проверяет заполнено ли поле «заголовок» формы отпраки else $head=trim($_POST['head']); if (!array_key_exists('text', $_POS
T)) $text = ''; //проверяет заполнено ли поле «текст» формы отпраки else $text=trim($_POST['text']); if (!array_key_exists('adres', $_POST)) $adres = ''; //проверяет заполнено ли поле «от кого» формы отпраки else $adres=trim($_POST['adres']); if (($h
ead)&& ($text)&& ($adres))
Send_mail($adres,$text,$head); //если вся форма была заполнена верно то почта отправляется
header('Location: index.php');//переход на главную страницу сайта
Шаг 6. Добавим пункт в меню админа ведущий на страницу работы с почтой
, для этого допишем в функцию menu_admin () следующую ссылку «<tr><td><a href="admin.php?what=mail">Почта</a></td></tr>»
Шаг 7.
Допишем в case функции admin_pa () следующую конструкцию
case 'del_mail': //если передан параметр «удалить сообщение»
Del_m
ail($id); //удалить сообщение из БД по уникальному ключу id
$cfg['content'] = 'mail_ad.tpl'; //открыть список имеющихся писем
break; case 'mail': //если передан параметр «просмотреть сообщения»
$cfg['content'] = 'mail_ad.tpl'; //открыть список имеющихс
я писем
break;
что бы система знала что делать когда админ решит удалить письмо или посмотреть список писем. Шаг 8.
Что бы пользователь мог видеть список ранее написанный админу писем в файл index.tpl добавляем if ($cfg['head']=="Связь с администрацие
й") //если заголовок страницы «Связь с администрацией»
echo see_mail();//тогда вызываем список писем
Шаг 9. Создаем в таблице «text» из нашей БД новую запись и в поле «name» вводим «Связь с администрацией», а в поле «text» вводи:
<script type="text/jav
ascript" src="tiny_mce/tiny_mce.js"></script><script type="text/javascript">tinyMCE.init({mode:"textareas",theme:"simple"});</script><script type="text/javascript" src="jquery.js"></script>
<style type="text/css">#sel_tab_pages {background
-
color:#9CBDDE;bo
rder
-
color:#31639C;border
-
style:groove;margin:0 auto;}#text{width:500px;height:300px;}#head{width:500px;}</style><form action='meil.php' method='post'><table id="sel_tab_pages"><tr><td><input type='text' name='head' id='head' value='
Тема
письма
'/></td></tr
><tr><td><input type='text' name='adres' id='head' value='
Адрес
отправителя
'/></td></tr><tr><td><textarea name='text' id='text'>
Текст
письма
</textarea></td></tr><tr><td><center><input type='submit' value='
Отправить
'/></center></td></tr></table></form>
от и всё.
Автор
fiery-baster
Документ
Категория
Информационные технологии
Просмотров
280
Размер файла
1 054 Кб
Теги
Linux
1/--страниц
Пожаловаться на содержимое документа