Помогите плизз поставить и запустить Apache

Тема в разделе "Веб-серверы - Администрирование", создана пользователем Asmadey, 8 ноя 2006.

Статус темы:
Закрыта.
  1. Asmadey

    Asmadey Гость

    Хочу сделать свой сайт, но мало в этом что понимаю, помогите ПОЖАЛУЙСТА новичку. У меня есть движок, есть PHP, есть Apache 2.0.49, и ещё огромнейшее желание сделать свой сай. Помогите разобраться с чего вообще нужно начать, и что вообще из этого можно сделать.
     
  2. admin

    admin Well-Known Member

    Регистрация:
    8 авг 2003
    Сообщения:
    2.811
    Симпатии:
    0
  3. Asmadey

    Asmadey Гость

    Спасибо, как же я сам не догодался :)
     
  4. arman

    arman Гость

    помогите настроить апач! PLEASE!!!!!
    все сделал как написано в книге Котерова PHP4, но при запуске появляется надпись
    "<OS 10048>" only one usage of each socket address <protocol/network address/port>
    is normally permitted.: make_sock:could not bind to address0.0.0.80
    no listening sockets available, shutting down
    unable to open logs"
    и в браузере не загружается страничка
     
  5. vitolg

    vitolg Гость

    Собственно настройка сводится к изменению нескольких строк в конфигурационном файле httpd.conf, который находится в папке conf в папке с установленным Apache. Перед редактированием, на всякий случай, сохраните имеющуюся копию файла httpd.conf как, например, httpd1.conf. Если что-то не заработает, всегда можете вернуть Apache к первоначальному состоянию.
    Корректность синтаксиса конфигурационного файла httpd.conf можно проверить командой Test Configuration из меню сервера Apache.
    Apache + PHP4
    В самом конце конфигурационного файла Apache httpd.conf добавь строки (я добавлял в конец этого файла):
    Если устанавливали PHP не в C:\PHP, а в другое место, то в строке
    укажить путь к PHP.
    Создать текстовый файл с содержимым <? echo "Тест PHP" ?> и сохранить его как test.php в папке Вашего сайта.Перезагрузить и попробывать набрать: http://ваш_сайт/test.php В браузере должна отобразиться строка Тест РНР

    PHP в Apache можно запускать и как модуль. Для этого найди в папке PHP файл php4ts.dll и скопируй его в папку с системными библиотеками Windows\system32 или WINNT\system32. А теперь в файл httpd.conf добавить строки:
    или
    в зависимости от того, где находится PHP.
     
  6. vladimircape

    vladimircape Гость

    Слушай поставь себе Денвер, и не мучайся , самый лучший вариант для новичка, Денвер это - Apache,PHP,MySQL. Ты не представляешь все как просто
     
  7. Hryv

    Hryv Гость

    У меня похожая проблема: хотел на досуге занятся самообразованием и освоить PHP
    Скачал Apache,PHP,MySQL инструкции к ним и начал ставить (на WinXP)
    Но на этом и застрял - настроить Apache оказалось сложно, хелпы и реальность не соответствовали друг другу
    Покупать дорогую книгу или тратит неделю мне не хотелось (ведь цель была не админить Apache, а изучить PHP)

    Так вот собственно вопрос: реально ли новичку самому установить и запустить Apache? Мне показалось, что там просто громадье ньюансов
    Или существует более простое решение?

    Сейчас еще попробую найти в Сети что это за Денвер
     
  8. Vadik(R)

    Vadik(R) Well-Known Member

    Регистрация:
    12 дек 2007
    Сообщения:
    483
    Симпатии:
    0
    Раз администрировать ты не собираешся, то установить может даже ребенок.
    Честно говоря не понял твоей проблемы... У себя устанавливал как обычную прогу, по-моему можно даже просто тупо жать "Далее". Где конкретно не получается?
     
  9. Hryv

    Hryv Гость

    Vadik&reg;, я не совсем правильно сформулировал
    Во фразе
    главный смысл в слове "запустить"

    Apache не запускался и выдавал ошибки (какие точно не помню, еще зимой дело было)

    Но вчера я скачал и установил Денвер - действительно все просто, во всяком случае Apache запускается и тестовый сайт из комплекта поставки работает.
    :)
     
  10. GOsha

    GOsha Гость

    denwer.ru - тебе туда. Поработаешь - потом бушь отдельно ставить все. А для новичка - норм.
     
  11. pmod

    pmod Гость

    Установка Web-сервера Apache

    Запустите установщик Web-сервера Apache. Результатом будет окно с лицензионным соглашением, после принятия которого, следует перейти к следующему окну с краткой информацией о нововведениях во второй версии Apache. Следующее окно, показанное на рисунке, позволяет ввести информацию о сервере: доменное имя сервера, имя сервера и адрес электронной почты администратора. Если установка происходит на локальную машину, то в поля для доменного имени и имени сервера следует ввести localhost (см. рисунок.). В нижней части окна предлагается выбрать номер порта по которому сервер будет принимать запросы (80 или 8080).

    [​IMG]

    localhost - это имя для использования сервера на локальной машине, которое связано с IP-адресом 127.0.0.1, который зарезервирован для локального использования.

    После этого будет предложен способ установки: стандартный (Typical ) или выборочный (Custom), позволяющий выбрать компоненты сервера вручную. Следующее окно позволяет выбрать каталог установки сервера, по умолчанию это C:program FilesApache Group, но мы рекомендуем выбрать другой каталог, например, С:www. После этого мастер установки сообщит о готовности к процессу установки и после нажатия кнопки Install, будет произведено копирование файлов сервера. Если установка прошла успешно, Windows автоматически запустит Apache.

    После успешной инсталляции при наборе в окне браузера http://localhost/ или http://127.0.0.1/ - должна загрузится страница сервера.

    Теперь необходимо научиться управлять Apache, а именно научится запускать, останавливать и перезапускать сервер. Существует много способов осуществить эти операции: при помощи утилиты ApacheMonitor, используя консоль управления сервисов Windows, используя пункты меню Пуск, из командной строки… Мы рассмотрим консоль управления сервисов Windows, позволяющего настроить Apache для автоматического старта при запуске системы. Для запуска консоли управления выполните команду
    Пуск->Настройка->Панель управления->Администрирование->Службы.
    В появившемся окне консоли, на приведённом ниже рисунке, следует выбрать сервис Apache2. Контекстное меню, открывающееся по нажатию на правой кнопке, позволяет осуществлять запуск, остановку и перезапуск сервиса.

    [​IMG]

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

    Конфигурирование Apache

    Web-сервер — сложный программный продукт работающий на разных платформах и в разных операционных системах по всему миру. Поэтому для корректной работы на установленной системе его необходимо настроить (сконфигурировать).
    По умолчанию настройки Apache расположены в файле httpd.conf в директории conf. Далее будут описаны основные директивы файла httpd.conf и их общеупотребительные значения.

    Пути к файлам

    В конфигурационных файлах Apache и PHP Вам часто придется указывать пути к различным директориям и папкам. В операционных системах UNIX и Windows при-меняются различные разделители каталогов. В UNIX используется прямая косая черта "/", например /usr/bin/perl, в в Windows обратная, например, c:Apachein. Вообще, в некоторых директивах Apache и PHP работают оба вида разделителей каталогов: прямой(/) и обратный(), но так как и Apache и PHP изначально разрабаты-вались под UNIX, то применяя их "родной" формат, Вы сможете избежать ряда проблем. Поэтому пути в настроечных файлах (httpd.conf и php.ini) рекомендуется писать через слеш в формате UNIX — "/". Например:

    Код (Text):
    ScriptAlias "/php_dir/" "c:/php/"
    Директивы файла httpd.conf

    Порт

    Код (Text):
    Port 80
    Устанавливает порт TCP, который используется Apache для установки соединения. По умолчанию используется 80 порт.
    ServerAdmin

    Код (Text):
    ServerAdmin mymail@yandex.ru
    Содержит e-mail-адрес администратора web-сервера, который будет отображаться при ошибках работы сервера.

    ServerName

    Код (Text):
    ServerName myserver
    Содержит имя компьютера для сервера.

    ServerRoot

    Код (Text):
    ServerRoot "C:/Apache2"
    Указывает на каталог, содержащий файлы WEB-сервера Apache.

    DocumentRoot

    Код (Text):
    DocumentRoot "C:/Apache2/htdocs"
    Определяет каталог, в котором расположены файлы WEB-сайта.

    Контейнер <Directory />

    Сфера действия директив внутри этого контейнера распространяется на все файлы и подкаталоги внутри DocumentRoot.
    Код (Text):
    <Directory />
    Options FollowSymLinks Includes Indexes
    AllowOverride All
    </Directory>
    • Директива AllowOverride установленная в значение All разрешает переопределять значения главного конфигурационного файла httpd.conf в файлах .htaccess.
    • Директива Options FollowSymLinks разрешает Apache следовать символическим ссылкам.
    • Директива Options Includes разрешает выполнение директив SSI (Server Side Includes) в коде страниц web-сайта.
    • Директива Options Indexes указывает, что нужно возвращать содержимое каталога, если отсутствует индексный файл.

    DirectoryIndex

    Код (Text):
    DirectoryIndex index.html index.phtml index.php
    Содержит список индексных файлов, которые следует отображать при обращении к директории без указания имени файла (например, http://localhost/test/).

    AddDefaultCharset

    Код (Text):
    AddDefaultCharset windows-1251
    Устанавливает кодировку по умолчанию, если кодировка не установлена в заголовке HTML-документа. Также Вам может потребоваться указывать значение кодировки KOI8-R.

    Создание виртуальных хостов

    На одном WEB-сервере Apache можно установить несколько WEB-сайтов. Эта функция сервера называется виртуальным хостингом. Ниже рассмотрим создание виртуальных узлов на основе имен. Виртуальные узлы обычно расположены в конце файла httpd.conf.

    Сначала требуется указать какой IP-адрес используется для виртуальных хостов.
    Код (Text):
    NameVirtualHost 127.0.0.1:80
    <VirtualHost 127.0.0.1:80>
    # Директивы виртуального хоста
    </VirtualHost>
    Далее нужно прописать директивы для контейнера <VirtualHost>, которые будут определять конфигурацию виртуального хоста.

    Файл httpd.conf. Контейнер <VirtualHost>
    Код (Text):
    <VirtualHost 127.0.0.1:80>
    ServerAdmin webmaster@may_domain.ru
    DocumentRoot c:/www/mysite
    ServerName www.mysite.ru
    ServerAlias www.site.ru www.host2.ru
    ErrorLog logs/mysite-error.log
    CustomLog logs/mysite-access.log common
    </VirtualHost>
    Рассмотрим директивы виртуального узла:
    • DocumentRoot указывает каталог, где расположены файлы (странички) данного виртуального узла (WEB-сайта)
    • ServerName указывает имя виртуального узла, по которому к нему можно обратиться. В данном случае, по адресу http://www.mysite.ru/.
    • ServerAlias содержит псевдонимы имен виртуального узла. В данном случае к виртуальному узлу можно также обратиться, используя имена: http://www.site.ru/ и http://www.host2.ru/.
    • ErrorLog и CustomLog указывает имена логов сервера для этого виртуального хоста.
    Контейнеры обычно располагают один за другим в конце файла httpd.conf.

    Файл httpd.conf. Настройка виртуальных хостов

    Код (Text):
    NameVirtualHost 127.0.0.1:80
    <VirtualHost 127.0.0.1:80>
    # Директивы виртуального хоста 1
    </VirtualHost>
    <VirtualHost 127.0.0.1:80>
    # Директивы виртуального хоста 2
    </VirtualHost>
    <VirtualHost 127.0.0.1:80>
    # Директивы виртуального хоста 3
    </VirtualHost>
    Для того, чтобы обращаться к виртуальным узлам по именам их следует прописать в базы данных DNS-сервера. Если Вы используете Apache для тестирования файлов на локальной машине, то имена ваших виртуальных узлов следует прописать в файле hosts. Для Windows 2000 и XP он расположен в каталоге C:WindowSystem32Driversets. Файл hosts содержит записи вида:

    Формат записей файла hosts

    Код (Text):
    127.0.0.1     www.mysite.ru
    127.0.0.1     www.site.ru
    127.0.0.1     www.host2.ru
    Установка и настройка PHP

    Для установки PHP следует создать каталог c:/php и разместить в нём файлы из zip-архива дистрибутива. После этого следует переименовать конфигурационный файл php.ini-dist в php.ini и скопировать его в директорию Windows.

    Далее, необходимо сообщить Web-серверу о наличии установленного PHP. Установка PHP возможна двумя вариантами: как модуль Apache и как внешнее CGI-приложение. Ниже будут рассмотрены оба варианта установки.

    Установка PHP в качестве модуля

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

    Для установки PHP откройте файл главный настроечный файл Apache httpd.conf на редактирование и удалите символы комментариев со следующих строк, при необходимости изменив их:

    Файл httpd.conf. Подключение PHP как модуль Apache

    Код (Text):
    AddType application/x-httpd-php phtml php
    LoadModule php5_module c:/php/php5apache2.dll
    Конфигурирование PHP (файл php.ini)

    Так как на локальной машине вы, скорее всего, будете заняты тестированием Ваших Web-приложений, то необходимо должным образом настроить конфигурационный файл php.ini. Найдите директиву error_reporting и установите для неё следующее значение:

    Код (Text):
    error_reporting = E_ALL & ~E_NOTICE
    Это значение настроит PHP таким образом, что при работе PHP-скриптов будут отображаться все ошибки, а "замечания" будут игнорироваться. Так же обходимо проследить, чтобы директива display_errors, была включена:

    Код (Text):
    display_errors = On
    Если данная директива отключена (Off), то сообщения об ошибках не будут выводится в окно браузера и в случае возникновения в коде ошибки вы будете гадать перед девственно белым окном — что бы это означало.
    Так же необходимо проследить, чтобы директива variables_order имела следующее значение:

    Код (Text):
    variables_order = "EGPCS"
    Следующая директива, которая может потребовать настройки – это register_globals. Если данная директива включена

    Код (Text):
    register_globals = On
    то переменные передаваемые метором GET, POST, через cookies и сессии можно использовать в PHP-скрипте, обращаясь к ним просто как обычным переменным $someone.
    Если данная директива отключена

    Код (Text):
    register_globals = Off
    то к таким переменным можно будет обращаться только при помощи суперглобальных массивов ($_POST, $_GET и т.п.).
    Директива register_long_arrays позволяет использовать суперглобальные массивы в старом формате ("длинном" - $HTTP_GET_VARS, $HTTP_POST_VARS и т.д.)

    Код (Text):
    register_long_arrays = On
    Теперь необходимо настроить индексный файл. Если в окне браузера набрать строку http://localhost/, а не http://localhost/index.html. Сервер всё равно предоставит браузеру index.html, так как этот файл является индексным и ищется в директории первую очередь, если не указан конкретный файл. Теперь необходимо настроить http.conf, таким образом, чтобы Web-сервер Apache так же реагировал на файлы index.php. Для этого найдте в http.conf директиву DirectoryIndex и исправьте её следующим образом:

    Код (Text):
    DirectoryIndex index.html index.html.var index.php
    После этого необходимо перегрузить сервер Apache, а в корневой директории виртуального хоста ("C:/www/scripts") создать пробный файл PHP (index.php):

    Код (Text):
    <?php
    phpinfo();
    ?>
    В случае успешной настройки, обращение по адресу http://localhost/index.php отобразит фиолетовую таблицу с текущими настройками PHP, которая выдаётся функцией phpinfo().
    Таким образом, у нас настроена связка Apache и PHP и можно переходить к настройке MySQL. Распакуйте дистрибутив MySQL во временную директорию и запустите установщик. Контролировать работу сервера MySQL можно точно так же как и Apache, используя консоль управления сервисов Windows.

    Подключение MySQL

    Откройте на редактирование файл php.ini из каталога Windows. Для подключения библиотеки расширения MySQL Вам нужно убрать символ комментария ;(точка с запятой) из строки:

    Код (Text):
    extension=php_mysql.dll
    Также проверьте значение директивы extension_dir

    Код (Text):
    extension_dir ="c:/php-5.0/ext"
    Она должна указывать на каталог, где хранятся расширения PHP. Разделители каталогов рекомендуется писать в формате UNIX (/) — обратный слеш. Однако, если ничего не получается, просто откатите назад значение директивы extension_dir, а библиотеку php_mysql.dll скопируйте в корень C:/php-5.0/ - в большинстве случаев это должно помочь.

    Если PHP Вас подключен как модуль, то Вам также необходимо скопировать библиотеку libmysql.dll из каталога с установленным PHP в системный каталог C:/Windows/System32. Чтобы внесенные изменения вступили в силу — перезагрузите Apache.

    Для проверки работы MySQL перезапустите сервер Apache и создайте проверочный скрипт со следующим кодом:

    Код (Text):
    <?php
    $dblocation = "127.0.0.1";
    $dbname = "test";
    $dbuser = "root";
    $dbpasswd = "";

    $dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd);
    if (!$dbcnx)
    {
    echo "<p>К сожалению, не доступен сервер mySQL</p>";
    exit();
    }
    if (!@mysql_select_db($dbname,$dbcnx) )
    {
    echo "<p>К сожалению, не доступна база данных</p>";
    exit();
    }
    $ver = mysql_query("SELECT VERSION()");
    if(!$ver)
    {
    echo "<p>Ошибка в запросе</p>";
    exit();
    }
    echo mysql_result($ver, 0);
    ?>
    В случае успешной интеграции MySQL в связку Apache и PHP, обращение к проверочному скрипту выведет в окно браузера версию сервера MySQL.

    В новых версиях MySQL (начиная с 4.1.0) изменился порядок работы с национальными кодировками, поэтому старый код может вызывать появление в таблице базы данных знаков вопроса '????????' вместо русского текста. Для того, чтобы этого не возникало в начало PHP-скрипта, после установки соединения с базой данных, следует поместить следующие строки:

    Код (Text):
    <?php
    mysql_query ("set character_set_client='cp1251'");
    mysql_query ("set character_set_results='cp1251'");
    mysql_query ("set collation_connection='cp1251_general_ci'");
    ?>
    Установка расширений PHP

    На последок вам возможно понадобится настроить некоторые расширения PHP, они настраиваются точно так же как и MySQL.

    Так для того, чтобы подключить графическую библиотеку GDLib в php.ini необходимо раскомментировать строку:

    Код (Text):
    extension=php_gd2.dll
    Проверьте после этого наличие данной библиотеки в папке c:phpext. После внесения изменений в php.ini перезапустите сервер. Что бы быстро проверить: подключилась ли библиотека — выполните функцию phpinfo(). Если все в порядке, то в таблице, которая отображается функций phpinfo(), должен появится раздел "gd". Скачать GDLib2

    Некоторые расширения требуют дополнительных библиотек. Так для того чтобы воспользоваться расширением PHP "Mcrypt Encryption", позволяющем осуществлять симметричное шифрование необходимо, во первых, расскомментирования строку в php.ini

    Код (Text):
    extension=php_mcrypt.dll
    А во вторых скопировать в папку С:/WINDOWS/ дополнительную библиотеку libmcrypt.dll

    [color="#000000background#000000"]Архив с Apache2, PHP, MySQL и утилитой NivaCat 2005+Лекарство можно скачать <span class='inv'><![CDATA[<noindex>]]>[/color]здесь | DepositFiles</span>

    Нород я не помню откуда взял эту статью, так что если это чьято сори, но она мне реально помогла... ;)
     
  12. AlexKozlov

    AlexKozlov Гость

    Ну хоть бы кто-то читал что человек пишет. Ошибка судя по всему в том что кто-то на 80/443 порту у него уже висит. И из-за этого денвер тоже нормально работать не будет. Вопрос в том как посмотреть что за зараза туда прописалась?

    омогите настроить апач! PLEASE!!!!!
    все сделал как написано в книге Котерова PHP4, но при запуске появляется надпись
    "<OS 10048>" only one usage of each socket address <protocol/network address/port>
    is normally permitted.: make_sock:could not bind to address0.0.0.80
    no listening sockets available, shutting down
    unable to open logs"
    и в браузере не загружается страничка

    P.S. Если используешь Skype - зайди в «Настройки -> Дополнительно -> Соединения» и убираем птичку с «Использовать порты 80 и 443 в качестве входящих альтернатив»
     
  13. MEXAHIK

    MEXAHIK Гость

    Сел изучать PHP поставил себе Apache и PHP 5 и столкнулся с тоже проблемой что и создатель темы " "<OS 10048>" only one usage of each socket address <protocol/network address/port> is normally permitted.: make_sock:could not bind to address0.0.0.80 no listening sockets available, shutting down unable to open logs" " почитал форум и
    1) убрал настойку в скайпе;
    2) внес изменения в файл httpd.conf :
    в 45 строке изменил с #Listen 12.34.56.78:80 на Listen 127.0.0.1:80
    в 46 с Listen 80 на #Listen 80
    И вуаля все заработало, запустилась моя тестовая страница. Я не знаю может это вам и не поможет но мне помогло.
     
  14. Гость

    Я неделю - мучился, с аналогичными проблемами, копировал php5apache2_2.dll в директорию sys32, и всё понапрасну, из-за неоплошности, поэтому дорогие мои друзья , мой горячий совет - сохраняйте копии httpd.conf и php.ini (об этом советует и Vitolg 5_е сообщение ).
    Мне например методом втыка(весь день промаялся за компом)- удалось настроить httpd.conf так чтобы запускался apache а затем чтобы как модуль apache запускался PHP, но за радостным мнговением последовали часы разочарований и это после того как изменил конфигурации httpd.conf и php.ini с тем что-бы проконектиться к MySql - а копии httpd.conf и php.ini не сохранил?!! - итог проконектиться к MySql не удалось а когда начал искать в чём препон - то обнаружил что к начальным версиям httpd.conf и php.ini мной успешно изменённым - мне не вернуться из-за глупости - я их не сохранил!!!
    Так лучше не торопиться - а делать всё обдумано, последовательно - тогда не придётся терять драгоценное время там где этого можно было-бы избежать а за счёт сбережённого времени - пивка попить или кофейку, или я не прав?
    В заключение проблему мне удалось решить когда изменил httpd.conf и php.ini перечитав кучу материала в том числе и на этом форуме, кстати скопированный мной php5apache2_2.dll в директорию sys32 я стёр - и всё равно PHP запускается, т.е. если можно не захламлять sys32 то надо так и поступить.
    P.S. буду рад если мой комент кому-то поможет, Удачи!
     
  15. vitolg

    vitolg Гость

    Свой ответ на данную тему я писал давно.. С тех пор уже не устанавливаю Apache + MySQL + PHP на винде, а работаю с линуксом. Но до сих пор помню, что особых проблем не возникает, если делать все не торопясь... Сохраняйте исходники (можно даже в другую папку)... Как вариант, ставте прослушивание не только 80 порта, но и 8080. В файле httpd.conf можете назначить порт любой, на котором будет Apache прослушивать... А вообще, очень много информации в самих конфигурационных файлах. Каждая строка описана на начинающего, для чего она нужна и какую функцию несет.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей