Бормотухи.НЕТ

Вернуться   Бормотухи.НЕТ > Компьютеры > Операционные системы > Linux
Расширенный поиск

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2011, 14:32 Вверх   #1
Жудчайший Тип
 
Аватар для Kernet
Kernet вне форума
Доп. информация
По умолчанию Web Server метод 2

И так да не возбранится на меня уважаемый Serberg, но я напишу более подробную статейку по настройке связке на убунте.

Настройка Apache

Установим apache:

Код:
sudo apt-get install apache2
По сути, апач готов :) [http://localhost/ или http://127.0.0.1], но апача нам будет маловато

Настройка Apache.

Для начала, давайте найдем пространство для файлов. У меня это пространство на отдельном диске /www чего и Вам желаю.

Пока что можно просто создать директорию в корне (о том как примонтировать диск, кому надо - тот знает как это делается):

Код:
sudo mkdir /www
Дадим права 777 на наш вэб спейс:

Код:
sudo chmod 777 /www
Теперь поменяем владельца с root на основного пользователя:

Код:
sudo chown user /www
Где user - это логин Вашего основного пользователя.

Наш сервер будет работать с виртуальными хостами. По этому, структура файлов будет такой:

/www
site.local/
log/
sess/
tmp/
www/
site2.local/
log/
sess/
tmp/
www/
/www будут директории с именем домена.
Я настаиваю на имени домена первого уровня .local, о нем, к сожалению, сейчас забыли, но он создавался именно для таких целей, для локальных ресурсов. Некоторые используют другие: .home - чепуха, .dev - чепуха, .int - от internal, хотя .int это реальный домен первого уровня для международных internatioanal организаций.
log/ - логи apache, php для этого домена.
sess/ - файлы сессий этого хоста.
tmp/ - временная директория.
www/ - файлы сайта. Создание виртуального хоста


Создадим структуру файлов(имя хоста будет global.local т.к. этот хост будет у меня доступен глобально):

mkdir /www/global.local
mkdir /www/global.local/log
mkdir /www/global.local/sess
mkdir /www/global.local/tmp
mkdir /www/global.local/www

Установим права 777 на все эти директории:

Код:
chmod 777 -R /www/global.local
Теперь настроим виртуальные хосты. Удалим всё из директорий /etc/apache2/sites-available/ и /etc/apache2/sites-enabled/ :

Код:
sudo rm /etc/apache2/sites-available/* 
sudo rm /etc/apache2/sites-enabled/*
Теперь создадим конфиг виртуального хоста:

Код:
sudo gedit /etc/apache2/sites-enabled/global.local
Где global.local название хоста. Это не обязательно, но очень удобно. Каждому хосту - свой файл с конфигом.

В файл пишем конфиг:


Код:
<VirtualHost *:80> 
    DocumentRoot /www/global.local/www 

    ServerName global.local 
    ServerAlias www.global.local 
    ServerAdmin webmaster@global.local 

    ErrorLog /www/global.local/log/apache_error.log 
    CustomLog /www/global.local/log/apache_access.log common 

    <Directory /www/global.local/www> 
        Options FollowSymLinks 
        Options +Indexes 
        AllowOverride All 
        Order allow,deny 
        Allow from all 
    </Directory> 

#    php_admin_value upload_tmp_dir /www/global.local/tmp 
#    php_admin_value error_log /www/global.local/log/php.log 
#    php_admin_value session.save_path /www/global.local/sess 
</VirtualHost>
Надеюсь, что конфиг и так ясен, подробности можно узнать в интрнетах (3 закомментированные строки - настройки php их мы раскомментируем, когда поставим php).

Теперь создадим ссылку на этот файл в другой директории:

Код:
sudo ln /etc/apache2/sites-enabled/global.local /etc/apache2/sites-available/global.local
Обновим hosts во всех необходимых компьютерах(ведь у нас нет локально DNS, пока). На сервере выполним:

Код:
sudo gedit /etc/hosts
Добавим туда:

Код:
127.0.0.1 global.local www.global.local
Ну, а если захотите с другой машины заходить по www.global.local на нужный сайт, добавьте в хосты ту же запись, только IP поправьте.

Установим mod_rewrite:

Код:
sudo a2enmod rewrite
Последнее, что мы сделаем - укажем ServerName в apache2.conf:

Код:
sudo gedit /etc/apache2/apache2.conf
Примерно на 200й строке перед Include /etc/apache2/mods-enabled/*.load вставимServerName 127.0.0.1 (на самом деле, не имеет особого значения, где именно вы это укажите).

Перезапустим апач для вступления в силу изменений.

Код:
sudo /etc/init.d/apache2 restart
Открываем [http://www.global.local/|http://www.global.local].
На этом настройка apache закончена.

Настройка PHP

Установим php:

Код:
sudo apt-get install php5
Теперь расскоментируем 3 строки в /etc/apache2/sites-enabled/global.local:

Код:
sudo gedit /etc/apache2/sites-enabled/global.local
Просто удалите # вначале каждой из 3х строк.

Создадим info.php:

Код:
gedit /www/global.local/www/info.php
Запишем туда:


<?php
phpinfo();
Откройте [http://global.local/info.php].

Всё, Apache + PHP настроены, теперь настроим MySQL.

Добавлено через 5 минут 50 секунд

Настройка MySQL

Установим MySQL клиент+сервер:

Код:
sudo apt-get install mysql-server mysql-client
В процессе появится окошко с предложением ввести пароль root для MySQL. Введём его.

Теперь нам нужно установить модуль PHP для работы с MySQL:

Код:
sudo apt-get install php5-mysql
Перезапустим апач:

Код:
sudo /etc/init.d/apache2 restart
Всё, Apache(mod_rewrite), PHP(PDO, mysqli), MySQL установлены. Можно работать!


З.Ы. Спасибо FreeD ибо я действительно забыл. Уважаемые администраторы! после того как Вы закончите настройку своего веб-сервера незабудте дать права на папку с сайтом в 755!

Последний раз редактировалось Kernet; 12.01.2011 в 00:58..
  Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
Старый 06.01.2011, 14:38 Вверх   #2
Жудчайший Тип
 
Аватар для Kernet
Kernet вне форума
Доп. информация
По умолчанию

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

мы будем всё делать непосредственно из консоли Mysql.

Получаем root доступ к мускулю

Код:
mysql -uroot -p
после этого нам требуется создать базу данных, делается это простой командой.

Код:
CREATE DATABASE `my_db` CHARACTER SET utf8 COLLATE utf8_general_ci;
вот теперь точно всё. :) приятной работы.
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Старый 06.01.2011, 20:07 Вверх   #3
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
По умолчанию

Kernet, мануала apache + nginx похожего нет ?
  Ответить с цитированием
Старый 06.01.2011, 20:37 Вверх   #4
Жудчайший Тип
 
Аватар для Kernet
Kernet вне форума
Доп. информация
По умолчанию

Напишу чутка попозже, сейчас как раз начну этим заниматься :)
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Старый 07.01.2011, 16:51 Вверх   #5
Уважаемая личность
 
Аватар для FreeD
FreeD вне форума
Доп. информация
По умолчанию

После "Дадим права 777 на наш вэб спейс: " перестал читать...
  Ответить с цитированием
Старый 07.01.2011, 16:55 Вверх   #6
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
По умолчанию

FreeD, на папку с сайтом должны быть права 755, а не 777.
  Ответить с цитированием
Cказали cпасибо:
Старый 07.01.2011, 16:59 Вверх   #7
Уважаемая личность
 
Аватар для FreeD
FreeD вне форума
Доп. информация
По умолчанию

о том я и говорю

Kernet, поясните народу зачем давать полный доступ для каталогов? не проще только для владельца запись и остальным чтение? 755 - с головой всегда хватало. А если FastCGI, то 755 -максимум.

Последний раз редактировалось elvis75; 07.01.2011 в 17:57..
  Ответить с цитированием
Cказали cпасибо:
Старый 07.01.2011, 18:03 Вверх   #8
Модератор
 
Аватар для elvis75
elvis75 вне форума
Доп. информация
По умолчанию

FreeD, как я понимаю этот мануал по созданию веб сервера локального, для себя любимого, для отладки.
Если планируется публичное использование сервера то права на доступ к www однозначно лучше ограничить до 755.
  Ответить с цитированием
Старый 09.01.2011, 11:51 Вверх   #9
Уважаемая личность
 
Аватар для FreeD
FreeD вне форума
Доп. информация
По умолчанию

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

PS. Может тему лучше в ветку Локальный сервер перенести?
  Ответить с цитированием
Старый 09.01.2011, 12:02 Вверх   #10
Модератор
 
Аватар для elvis75
elvis75 вне форума
Доп. информация
По умолчанию

FreeD, придет автор и поправит свой пост, а мы потрем свои рассуждения про 777 и 755
Переносить ничего никуда не будем,
  Ответить с цитированием
Старый 09.01.2011, 17:39 Вверх   #11
Залетный юзер
 
Аватар для Syfon
Syfon вне форума
Доп. информация
По умолчанию

Код:
<VirtualHost *:127.0.0.1>
<VirtualHost *:127.0.0.2>
<VirtualHost *:127.0.0.3>
<VirtualHost *:127.0.0.4>
Вот так подключать дофига виртуальных хостов,потому что если писать 80 порт,при создание нового виртуального хоста будет загружаться предыдущий сайт на 80 порте.А в httpd.conf настроить порт.
  Ответить с цитированием
Старый 12.01.2011, 00:59 Вверх   #12
Жудчайший Тип
 
Аватар для Kernet
Kernet вне форума
Доп. информация
По умолчанию

Поправил пост, Фред спасибо что напомнил!
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
размещение поддомена на App server PaSaD Локальный сервер 8 15.07.2013 19:53
[Инструкция] Продвинутый метод вывода топовых новостей (с картинками) Serberg Инструкции, модификации и статьи для DLE 1 31.01.2011 14:23
Ftp Server Dganik Сайтостроение 13 03.07.2010 09:31
Су-джок, метод лечения Алёнка Здоровье 3 13.09.2009 21:55
[Инструкция] Метод получения полного доступа к системным файлам и папкам для новых прошивок.(nokia e51) foolman Nokia 9 22.02.2009 21:16


Текущее время: 01:54. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
 

Время генерации страницы 0.16281 секунды с 12 запросами