Переход с сервера apache 1 3 на apache 2 0


Содержание

Проблема при переходе с Apache 1.3 на 2.0. Help.

К примеру вот такой простейший скрипт на PHP:

Значение переменной а не передаётся. Под Apache 1.3 всё работает. Что где править?

Re: Проблема при переходе с Apache 1.3 на 2.0. Help.

А ты пхп пересобрал под новый апач?

Re: Проблема при переходе с Apache 1.3 на 2.0. Help.

Я поставил Linux RedHat 9 в полном объёме. В нём изначально Apache 2 включен и, надо полагать, все необходимые модули. До этого стоял RH 7.1 с Apache 1.3. На нём работало без проблем. А как убедиться, что модуль php есть? Вообще то файл libphp4.so на месте.

Re: Проблема при переходе с Apache 1.3 на 2.0. Help.

Re: Проблема при переходе с Apache 1.3 на 2.0. Help.

И почему люди берут дистрибутивы n-годичной давности(в которых софт страшно старый и с табуном уязвимостей), выставляют их голой попой в интернет и потом ругаются, что их сломали через этот страшно старый софт?

Re: Проблема при переходе с Apache 1.3 на 2.0. Help.

Там недо не пересобирать а просто настроить конфиг апача — пхп вырублен по умолчанию

Re: Проблема при переходе с Apache 1.3 на 2.0. Help.

Переход от версии 1.3 к версии 2.0

Этот документ необходим для того, чтобы помочь пользователям перейти к использованию сервера версии 2.0. Здесь вы найдёте лишь краткие замечания; более подробную информацию о нововведениях можно найти либо в документе Новые возможности, либо в файле src/CHANGES .

См. также

Изменения в конфигурировании процесса сборки сервера

  • Apache теперь использует систему autoconf и libtool для конфигурирования процесса сборки. Использование этой системы похоже на использование APACI в Apache 1.3, хотя и не является абсолютно тем же самым.
  • В добавок к обычному списку модулей, которые вы можете выбрать при сборке сервера, в Apache 2.0 появились мульти — процессные модули (МП — модули), в которых теперь сконцентрирована основная часть кода, отвечающего за обработку запросов.

Изменения в конфигурировании работы сервера

  • Многие из тех директив, которые обслуживались ядром сервера Apache 1.3, теперь перенесены в мульти — процессные модули. Если вы хотите, чтобы поведение сервера было наиболее приближено к поведению Apache 1.3, то при сборке вы должны выбрать МП-модуль prefork . Другие МП-модули предоставляют иные директивы, отвечающие за работу процессов сервера и обработку запросов.
  • Прокси модуль был переписан, и теперь поддерживает спецификацию HTTP/1.1. Одним из наиболее важных изменений является то, что директивы, контролирующие работу модуля, теперь располагаются в секции

, а не в , как это было ранее.

  • Обработка PATH_INFO (путевой информации, следующей за именем запрашиваемого документа) изменилась для некоторых модулей. Модули, которые раньше были написаны как обработчики (handler), а теперь выполняют роль фильтров, могут более не принимать запросы, содержащие PATH_INFO . Такие фильтры, как INCLUDES или PHP реализованы первыми в базовом обработчике, таким образом они не могут принимать запросы, содержащие PATH_INFO . Вы можете использовать директиву AcceptPathInfo , чтобы заставить базовый обработчик принимать подобные запросы, и таким образом восстановить возможность использования PATH_INFO в документах, использующих включения на стороне сервера (SSI).
  • Директива CacheNegotiatedDocs теперь может принимать аргументы on и off . Уже существующие экземпляры директивы CacheNegotiatedDocs должны быть заменены на CacheNegotiatedDocs on .
  • Директива ErrorDocument более не использует открывающую кавычку в начале аргумента для обозначения того, что аргумент является текстовым сообщением. Вместо этого вам необходимо заключать весь текст сообщения в двойные кавычки. Например, существующие директивы

    ErrorDocument 403 «Некоторое сообщение

    ErrorDocument 403 «Некоторое сообщение»

    Функциональность директивы ErrorHeader была передана директиве Header , потому что прежнее название директивы было некорректно. Теперь необходимо писать

    Header always set foo bar

    чтобы получить желаемый результат.

    Другие изменения

    • Модуль mod_auth_digest , который имел экспериментальный статус в Apache 1.3, теперь является стандартным модулем.
    • Модуль mod_mmap_static , который имел экспериментальный статус в Apache 1.3, заменён модулем mod_file_cache .
    • Организация дистрибутива полностью изменена и теперь более не содержит независимого каталога src . Вместо этого исходные коды логически организованы в основном каталоге дистрибутива, а установка скомпилированного сервера производится в отдельный каталог.

    Модули сторонних разработчиков

    Значительные изменения были внесены в API для Apache 2.0. Существующие модули, написанные с использованием Apache 1.3 API, не будут работать под Apache 2.0, если не внести в них необходимые изменения. Более подробная информация по этому поводу доступна в документации для разработчиков.

    Copyright 2013 The Apache Software Foundation.
    Licensed under the Apache License, Version 2.0.

    Apache 1.3.x на системах Unix

    Этот раздел включает инструкции по установке Apache и PHP на платформах Unix. Установка PHP с Apache2 описана в соответствующем разделе.

    Вы можете менять аргументы configure на шаге 10 ниже. Полный список аргументов доступен в списке основных параметров конфигурации. А параметры, специфичные для различных расширений, описаны в разделах посвященных соответствующим расширениям. В инструкции ниже опущены номера версий — вы должны заменить ‘xxx’ на номер версии присутствующий в именах скачанных вами файлов.

    Пример #1 Инструкция по установке PHP, как подгружаемого модуля Apache

    В качестве альтернативы, можно установить PHP, как статический модуль Apache:

    Пример #2 Инструкция по статической сборке PHP и Apache

    В зависимости от варианта вашей установки Apache и версии Unix, возможно множество путей остановки и запуска сервера. Ниже приведены несколько распространенных команд перезапуска сервера для различных установок Apache и Unix-систем. Замените /path/to/ на реальный путь до приложений в вашей системе.

    Пример #3 Примеры команд перезапуска Apache

    Пути к apachectl и http(s)dctl часто различаются. Если в вашей системе есть команды locate или whereis, или which, они помогут вам найти программы, контролирующие сервер.

    Другие варианты компиляции PHP для Apache:

    Будет создан файл подгружаемой библиотеки libphp5.so . Эта библиотека должна быть подгружена в Apache с использованием директивы LoadModule конфигурационного файла httpd.conf . В данном случае поддержка PostgreSQL будет встроена в эту библиотеку.

    Будет создан файл подгружаемой библиотеки libphp5.so для Apache, но так же будет создана подгружаемая библиотека pgsql.so , которая должна быть подгружена в PHP одним из двух способов: директивой extension в php.ini или в скрипте, использованием функции dl() .

    Будет создана библиотека libmodphp5.a . Файл mod_php5.c и несколько сопровождающих файлов будут скопированы в каталог src/modules/php5 дерева исходных кодов Apache. Затем следует скомпилировать Apache, используя —activate-module=src/modules/php5/libphp5.a, система сборки Apache создаст libphp5.a и статически свяжет с исполняемым httpd . Поддержка PostgreSQL будет включена непосредственно в httpd и конечным результатом будет единственный исполняемый файл httpd , включающий все от Apache и все от PHP.

    Так же как и прежде, взамен поддержки PostgreSQL, встроенной непосредственно в конечный исполняемый файл httpd , вы получите библиотеку pgsql.so , которую должны будете загрузить в PHP одним из двух способов: php.ini или используя функцию dl() .

    Выбирая способ установки PHP, следует учитывать преимущества и недостатки каждого из методов. Если вы собираете PHP, как подгружаемый модуль Apache — вы сможете компилировать PHP и Apache отдельно друг от друга и вам не нужно будет перекомпилировать Apache, если вы захотите изменить конфигурацию PHP. Если вы собираете PHP статически — PHP будет работать чуть быстрее. Для получения более подробной информации посетите страницу посвященную поддержке » DSO (Dynamic Shared Object) в Apache.

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

    Убедитесь, что вы указываете установленную версию apxs, когда используете —with-apxs=/path/to/apxs . Вы НЕ ДОЛЖНЫ указывать версию apxs, поставляемую с исходными кодами Apache — только действительно установленную в вашу систему вместе с сервером.

    Apache. Несколько сайтов на одном сервере

    Содержание

    Эта инструкция основана на статье «Многоликий Apache» из журнала «Системный администратор» №12, 2005г. (http://samag.ru)

    Установив, веб-сервер Apache и предоставив через него на всеобщее обозрение свой сайт, некоторые и не подозревают, каким мощным инструментом они владеют. С его помощью можно управлять сотнями сайтов с разными именами и уровнями доступа. Денежная стоимость и временные затраты на добавление каждого сайта минимальны.

    Веб-сервер Apache, популярный благодаря своей прозрачности для программистов и администраторов и не в последнюю очередь благодаря бесплатности, реализован под все более-менее популярные операционные системы. Его настройки для всех ОС одинаковы, различаются только пути, где хранятся конфигурационные файлы. На одном сервере может быть запущено несколько экземпляров Apache, прослушивающих разные адреса и/или порты. Один экземпляр может обслуживать несколько сайтов (подробнее об этом ниже). Проект настолько популярен, что постоянно обрастает новой функциональностью. О степени популярности можно судить либо по статистике, что, на мой взгляд, довольно опрометчиво, либо по конкретным фактам. Фактов популярности Apache мы приведём два. Во-первых, его наличие в качестве веб-сервера по умолчанию в большинстве UNIX-подобных операционных систем. Во-вторых, такой гигант в области ИТ как компания Oracle приняла его в состав своего продукта Oracle Application Server 10g, где он играет одну из ключевых ролей.

    1. Компьютер с установленным пакетом Apache 1.3 или 2.0
    2. Адрес сервера в интернете: 10.0.10.15 и имя: teo.mynetwork.ru
    3. Адрес сервера в локальной сети: 192.168.100.18
    4. Несколько сайтов.
    5. Несколько имён для одного сайта

    Задача

    1. Разместить все сайты на одном сервере

    2. Сделать доступ к каждому сайту по отдельному URL
    3. Ограничить доступ к некоторым сайтам
    4. Сделать перенаправление нескольких имён на один сайт

    Решение

    Создаём два сайта (виртуальные хосты)

    Предположим, что у нас два различных сайта teo.mynetwork.ru и logos.mynetwork.ru. Эти имена должны быть доступны, т.е. держатель зоны mynetwork.ru должен прописать в ней узлы teo и logos

    — Для каждого сайта создаём каталог в корневом каталоге документов Apache (teo и logos, соответственно). Для некоторых Linux по умолчанию /var/www/html, но чтобы убедиться, где он расположен на нашем сервере, смотрим значение директивы DocumentRoot в /etc/httpd/conf/httpd.conf. Итак, создаём:

    — Мы будем разделять журналы для каждого сайта, поэтому создадим соответствующие каталоги:

    — Если у нас уже был создан сайт, то всё его содержимое переносим в созданный для него каталог, т.е. из /var/www/html в /var/www/html/teo. Новый сайт logos.mynetwork.ru размещаем в /var/www/html/logos. Теперь настраиваем Apache. Добавляем в конец файла /etc/httpd/conf/httpd.conf (некоторые ОС создают для каждого виртуального хоста отдельный конфигурационный файл, тог):

    Все настройки не заданные для сайта явным образом в директиве VirtualHost, наследуются от глобальных настроек Apache, указанных выше в этом же файле.

    — Теперь, обращаясь по DNS именам, мы будем получать разные сайты. Если обратиться по IP адресу, то получим сайт teo.mynetwork.ru, т.к. он подключен первым.

    Создаём ссылки с нескольких DNS адресов на один сайт

    Это можно осуществить двумя способами: созданием синонимов, или перенаправлением всех обращений с другого сайта.

    1) Синонимы задаются директивой ServerAlias, могут содержать маску, и разделяются пробелом. Вот несколько примеров создания синонимов:

    Синоним — это DNS-имя. Имена могут быть абсолютно любыми, в том числе и из разных доменов, но все они должны разрешаться в IP-адреса, то есть их предварительно нужно зарегистрировать в DNS.

    2) Перенаправление задаётся директивой Redirect. Создаём новый пустой сайт pantheon.ru. Как и для предыдущих сайтов, это делается в три шага: создание каталога для документов, для журналов и добавление конфигурации в httpd.conf:

    Можно перенаправлять не со всего сайта, а только с определённого каталога или даже документа:

    При этом Apache воспринимает первый параметр директивы Redirect не как URL, а как набор символов, при совпадении с которым происходит перенаправление. Отсюда следует, что он НЕ проверяет наличие указанных каталогов и файлов, а ссылки /samag и /samag/ НЕ считает одинаковыми.

    Перенаправление с помощью файла .htaccess выглядит так:

    • 1-я строка: включаем возможность менять URL
    • 2-я строка: перенаправляем запрос к странице http://old.site.ru/wiki/Что-то на другой сайт, передавая параметры ($1)
    • 3-я строка: любые другие запросы к старому сайту перенаправляем на новый.

    Ограничиваем доступ к сайтам

    Теперь, если пользователь обратится к нам по IP-адресу, либо по имени, на которые наш сервер откликается (см. Приложение), то Apache сначала определяет, не удовлетворяет ли запрос описанным директивами VirtualHost сайтам и если не находит ни один из них, то выдаёт сайт по умолчанию, который находится в каталоге, заданном глобальной директивой DocumentRoot, т.е. уровнем выше остальных. Таким образом, получается, что пользователь может попасть на любой из виртуальных сайтов не тем путём, какой мы для него приготовили, т.е. http://logos.mynetwork.ru/. Например, набрав в адресной строке браузера «http://192.168.100.18/logos/», он получит сайт logos.mynetwork.ru. Правда в этом случае документы, использующие ссылки на ресурсы этого же сайта, будут некорректно отображаться, потому что ссылки делаются относительно корня сайта и, если это была ссылка /img/picture.jpg, то во втором случае этот же файл уже нужно искать по ссылке /logos/img/picture.jpg, этого же браузер не знает. Таким образом, здесь все зависит от того, догадывается ли пользователь, в каких каталогах мы храним наши сайты. В принципе, в этом нет ничего плохого, ведь мы в любом случае выложили сайты, чтобы их посещали (правила по ограничению доступа к ресурсу всё равно будут действовать, о них мы поговорим чуть позже), но как-то это выглядит не красиво (для того и двери, чтоб в окна не лазить). Чтобы устранить эту некрасивость можно поместить сайт по умолчанию на тот же уровень, что и остальные сайты, т.е. создать каталог /var/www/html/default и указать его в двух директивах глобальных настроек (т.е. до описания виртуальных сайтов)

    Теперь перейдём непосредственно к раздаче прав доступа. Существует два способа указания прав доступа к каталогу веб-сайта средствами Apache:

    1) поместить в каталог файл .htaccess,

    2) использовать директиву в файле конфигурации.

    В обоих случаях правила распространяются и на вложенные каталоги. Мы рассмотрим оба способа и изменим права доступа к двум каталогам сайта logos.

    файл .htaccess

    Какие параметры можно переписать в файлах .htaccess определяется директивой AllowOverride. Для разрешения переопределения всех деректив нужно добавить в конфигурацию сайта строку:

    Перечислим преимущества использования файла .htaccess:

    1. при его изменении не нужно перезапускать Apache;
    2. при одинаковом уровне доступа к разным ресурсам можно пользоваться ссылками на один файл .htaccess;
    3. можно предоставить пользователю право редактирования этого файла, что удобно, если у нас сервер с множеством клиентских сайтов.

    Есть и недостатки:

    1. для того, чтобы ответить на вопрос: «какие ограничения доступа существуют на сайте?» — администратору необходимо помнить, в каких каталогах лежат эти файлы и ссылки;
    2. если сайт будет переноситься на другой сервер, и, что очень вероятно, будет размещён в другом каталоге, то для корректировки ссылок уйдёт много времени;
    3. повышается нагрузка сервера, т.к. при каждом запросе на ресурс он обращается к .htaccess в этом каталоге и всех верхних по иерархии, наследуя их настройки т.е. запрос на ресурс http://teo.mynetwork.ru/olimp/staff/zeus.htm инициирует проверку .htaccess файлов в каталогах
    • ./
    • ./olimp/
    • ./olimp/staff/

    Пример

    Предоставим права с помощью файлов .htaccess, нужно создать соответственно файл /var/www/html/logos/info1/.htaccess:

    и файл /var/www/html/logos/info2/.htaccess:

    «> директива

    Определяя настройки доступа к каталогам сайта с помощью директивы в одном конфигурационном файле всего сайта, мы получим следующие преимущества:

    1. можно быть уверенным, что ничего не пропустим, если вдруг нужно изменить уровень доступа к какому-нибудь ресурсу;
    2. повышаем скорость реакции сервера на запросы, т.к. все настройки загружаются при старте Apache.

    Ну а мириться придётся с тем, что для каждого каталога необходимо описывать права отдельно (помним, что для подкаталогов права наследуются), даже если они одинаковые. Правда, есть поддержка масок, например:

    будет соответствовать именам каталогов в /www/ состоящим из трёх цифр, но это не всегда может облегчить ситуацию.

    Пример

    Описываем те же права в главном конфигурационном файле Apache httpd.conf или в файле настройки виртуального хоста:

    Оба варианта настройки равноправны и создают следующие ограничения:

    Доступ к ресурсу http://logos.mynetwork.ru/info1/ смогут получить только два пользователя из локальной сети с указанными IP адресами (хотя такие ресурсы лучше хранить на внутренних веб-серверах), ещё мы дали разрешение Apache, в случае отсутствия в каталоге начальной страницы, генерировать html документ с содержимым каталога.

    Для доступа к ресурсу http://logos.mynetwork.ru/info2/ будут запрошены имя пользователя и пароль, которые будут сверены с данными в файле /var/www/main_users. Создадим этот файл:

    Добавим в него пользователя chef:

    В некоторых дистрибутивах команда может называться без цифры, т.е. htpasswd, находится она в пакете с утилитами Apache, в Debian это apache2-utils

    Остальных пользователей добавляем аналогичным способом. Такие файлы создаём для каждой группы пользователей с одинаковыми правами доступа к ресурсу. Одни и те же группы можно использовать во всех сайтах.

    Для удаления пользователя chef из списка, используем комманду:

    — Если возникли проблемы, то смотрим в логах /var/log/apache2/error_log. Можно их сделать более детальными указав в /etc/httpd/conf/httpd.conf или в конфигурации определённого виртуального хоста:

    Последние штрихи

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

    Кроме изящности мы получаем удобство в быстром подключении и отключении сайта, путём добавления/снятия символа комментария “#” в начале строки. Это особенно актуально, когда настройка каждого сайта раздувается на несколько десятков строк.

    Также нелишне будет настроить ротацию журналов с помощью logrotate.

    Приложение

    Особенности директив Listen и NameVirtualHost

    Директива Listen имеет больший приоритет чем, NameVirtualHost. Она говорит, откуда принимать запросы. В то время как последняя определяет, как обрабатывать полученный запрос. Это значит, что если указано значение

    то Apache будет прослушивать порт 80 на всех IP адресах и директива

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

    не возымеет действия, и сайт будет не доступен из локальной сети.

    Как поменять порт WEB-сервера Apache

    Apache (сейчас Apache 2) до сих пор является WEB-сервером по умолчанию и большинство хостингов ставит его единственным HTTP-сервером. Однако, с появлением NGiNX ситуация поменялась, и на 80-м порту предполагается наличие более шустрого NGiNX тогда, как более навороченный Apache ставится уже за ним с тем, чтобы обрабатывать сложные запросы по сборке динамических страниц «на лету». А вся статика (типа картинок, JavaScript и CSS-файлов) отдаётся быстро и сразу NGiNX’ом. Так как порт 80 для всех браузеров до сих пор остался портом для http-запросов, то на этом порту на сервере должен стоять NGiNX, а Apache, как правило, вешается на дополнительный для http порт 8080. В этой статье рассмотрим, как поменять настройки Apache на сервере так, чтобы он отвечал с порта 8080, освободив 80-й порт для NGiNX.

    ports.conf — основной файл конфигурации портов WEB-сервера Apache

    В предыдущей статье было подробно разобрано, как найти директорию на сервере с файлами конфигурации Apache на удалённом сервере. В этой же директории должен располагаться файл ports.conf , в котором прописаны порты, с которыми работает Apache.


    Содержимое файла ports.conf по умолчанию

    Файл ports.conf имеет следующее содержимое сразу после установки Apache на сервер:

    Как видим, Апач действительно слушает 80-й порт при http-запросе, а при https-запросе — порт 443.

    Меняем http-порт 80 Apache на 8080

    Для того, чтобы Apache перестал занимать 80-й порт, а стал отвечать с 8080-порта,

    1. в файле ports.conf нужно
      • поменять строку Listen 80
      • на строку Listen 8080
    2. перезапустить Apache командой
      • apachectl -k restart

    Проверяем смену http-порта Apache на 8080

    Если раньше сайт отвечал на запрос в браузере:

    то после описанных выше манипуляций, сайт по этому запросу становится недоступным. Для того, чтобы увидеть сайт, нужно обратиться к порту 8080 на сервере, указав это в явном виде в строке запроса браузера:

    Резюме

    Таким образом можно освободить 80-й порт, перепрописав его для Apache на порт 8080.

    Если на сервере несколько сайтов, то для каждого виртуального хоста в папке /etc/apache2/sites-available нужно прописать порт 8080 вместо 80:

    И, конечно, перезагрузить Апач.

    Если NGiNX ещё не установлен, остановим Apache командой

    Перед перезагрузкой Апача полезно проверять на косячность правок его конфигов командой apachectl stop . Включим после того, как установим NGiNX.

    Так должна выглядеть проверка синтаксиса конфигурации Apache.

    После этого можно перезагрузить NGiNX и убедиться в правильности работы обоих серверов на портах 80 и 8080 (читать по → этой ссылке).

    Публикация 1С 8.3 на Apache

    Сергей Лунев

    Для того чтобы в сети Интернет появился сайт, он должен быть размещен на сервере, подключенном к сети и имеющем IP-адрес. Сервер представляет собой компьютер, на котором установлено специальное программное обеспечение, которое в свою очередь также называют веб-сервером. Существует большое количество веб-серверов, и самым популярным из них является Apache.

    Apache – полнофункциональный, расширяемый веб-сервер с открытым кодом, удовлетворяющий практически все потребности современных веб-разработок. Apache является кроссплатформенным, т.е. поддерживает множество операционных систем – Microsoft Windows, Linux, BSD, Mac OS, Novell NetWare, BeOS. Основные его функции: поддержка http-протокола, возможность подключения внешних модулей, использование СУБД для проверки подлинности пользователей и обработка файлов конфигурации.

    Рис.1 Функции Apache

    Установка Apache

    До того как произойдет настройка Apache для 1С и сама публикация на веб сервере Apache базы 1С, его необходимо скачать. Бинарных сборок для Windows сейчас нет, а значит, скачиваем для примера более раннюю версию – 2.2.25, воспользовавшись поиском.

    Запускаем скаченный файл и следуем за установкой.

    Далее мы указываем информацию о нашем сервере. Если сервер в локальной сети, а у предприятия нет своего домена, указываем любую информацию, и имя сервера – Localhost, что означает, что сервер будет работать на локальном компьютере. В следующем поле заполняем адрес электронной почты, на который будут приходить ответы сервера (у нас произвольный, для примера).

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

    Для совместного применения с программой 1С достаточно рекомендуемой установки конфигурации Apache.

    После окончания установки сервер начинает работать автоматически. Внизу на панели появится значок программы.

    Проверка работы веб-сервера

    Самый простой способ проверки работы нашего веб-сервера – открыть любой браузер и указать в адресной строке – http://localhost.

    В окне у нас должно появиться сообщение «It works!».

    Localhost (локальный хост) – это компьютер в компьютерных сетях, стандартное, официально зарезервированное доменное имя для частных IP-адресов. Напомним, что при установке Apache мы указали его в поле «Server Name».

    Второй способ определения работоспособности нашего веб-сервера – по IP адресу.

    Определим IP-адрес нашего ПК в «локалке». Щелкнув в левом углу на значке «Сеть», перейдем в меню «Центр управления сетями и общим доступом».

    В открывшемся окне выбираем пункт «Беспроводное сетевое соединение», т.е. нашу сеть, и в появившемся окне нажимаем кнопку «Сведения». Там мы видим IP-адрес нашего компьютера в сети. В нашем случае – 192.168.0.102.

    Для проверки работы веб-сервера открываем любой браузер и вводим – htpp://192.168.0.102. Если мы снова видим в окне браузера надпись «It works!», все работает.

    При открытии с другого ПК в «локалке» должен быть такой же результат.

    Публикация базы 1С на веб-сервере

    Открываем 1С:Предприятие в конфигураторе от администратора и загружаем нужную информационную базу.

    В «Администрировании» выбираем необходимую нам функцию.

    Если появляется окно:

    … необходимо установить модули расширения веб-сервиса.

    Для этого зайдем в «Панель управления-Программы и компоненты», найдем «1С:Предприятие» и нажмем «Изменить».

    Выбираем «Модули расширения веб-сервиса» и нажимаем «Далее», пока не дойдем до «Готово».

    Далее опять запускаем 1С в том же режиме и заходим в пункт меню «Администрирование-Публикация на веб-сервере».

    В открывшемся окне указываем имя, выбираем веб-сервер (программа автоматически увидела установленный Apache) и произвольную папку для публикации (имя папки должно быть написано латиницей).

    Нажимаем «Опубликовать» и подтверждаем запрос программы о перезапуске веб-сервера.

    Если возникли проблемы при публикации – вы запустили 1С не от имени администратора.

    Проверим работу веб-сервера

    Открываем в браузере нашу базу – http://localhost/1С

    С других компьютеров в сети вводим – http://192.168.0.102/1С

    В окне браузера появляется окно нашей базы 1С.

    При окончании работы с программой в браузере не забудьте выйти из нее через меню «Файл-Выход».

    Веб-сервер можно добавить на панель быстрого доступа браузера.

    Это повысит удобство работы и скорость доступа к управлению сервером.

    Переход на HTTP/2 (Ubuntu, Apache)

    HTTP/2 принят и стандартизирован, и большинство современных браузеров (в том числе и мобильных) его уже поддерживают. Как же добавить поддержку протокола на свой сервер?

    Немного предыстории

    Отличия от HTTP 1.1

    Основные отличия таковы:

    • HTTP/2 — бинарный;
    • Приоритезация запросов;
    • Мультиплексирование множества запросов в одном соединении TCP.

    Этот протокол позволяет выигрывать в скорости передачи данных, а также снизить нагрузку на сервер.

    Читается как «спиди». Эта разработка компании Google позволяла использовать одно TCP соединение, и также использовала приоретизацию при загрузке ресурсов.

    Однако его поддержка уже прекращена в пользу HTTP/2, поэтому особо тут нечего говорить.

    Поддержка HTTP/2 в Apache

    Обновление Apache

    Для того, чтобы использовать HTTP/2, для начала нужно обновить Apache до версии 2.4.17 или выше.

    а потом сразу и:

    Проверить текущую версию можно командой apache2 -v .

    Вот теперь, когда Apache выше 2.4.17 установлен, можно приступать к настройке самого Apache и виртуальных хостов на работу через HTTP/2.

    Активация HTTP/2


    Активируем поддержку нового протокола

    Настройка сайтов

    Добавляем поддержку http/2 в виртуальные хосты.

    Естественно, виртуальные хосты лежат соответственно в /etc/apache2/sites-enabled и /etc/apache2/sites-avalible :

    Ну и конечно же необходимо после всех этих махинаций перезагрузить Apache.

    Если сервер успешно перезагрузился, и сайты работают, значит все сделано было правильно.

    Проверка

    Есть несколько способов проверить, все ли правильно работает. Есть сервисы, есть плагины для браузера, но проще всего посмотреть какой протокол отображается в access.log .

    Если Вам важны позиции в поиске Яндекса, то спешу Вас огорчить, его роботы не понимают новый протокол:

    В настоящее время у основного поискового робота не реализована поддержка протокола HTTP/2, поэтому Ваш сайт может индексироваться некорректно.

    Ну точнее говоря может перестать индексироваться вообще.

    HTTPD — Apache2 интернет сервер

    Содержание

    HTTPD — Apache2 интернет сервер

    Apache — наиболее используемый интернет-сервер на линукс системах. Интернет-сервера используются для выдачи интернет-страниц по запросу клиентских компьютеров. Клиенты обычно запрашивают и просматривают интернет-страницы используя приложения интернет-браузеров, таких как Firefox, Opera, Chromium или Mozilla.

    Для просмотра страницы о сообществе [Ubuntu] пользователь должен ввести следующий путь:

    Установка

    Интернет-сервер Apache2 доступен в Ubuntu Linux. Для установки Apache2:

    В терминале введите следующую команду:

    Настройка

    Apache2 настраивается помещением инструкций (directives) в обычные тестовые файлы настроек. Эти инструкции разделены между следующими файлами и каталогами:

    apache2.conf: основной файл настроек Apache2. Содержит глобальные настройки для всего Apache2.

    conf.d: (каталог) содержит файлы настроек, которые применяются глобально к Apache2. Другие пакеты, которые используют Apache2 для предоставления контента, могут добавлять файлы или символьные ссылки в этот каталог.

    envvars: файл, где устанавливаются переменные окружения Apache2.

    httpd.conf: устаревший основной файл настроек Apache2, названный по имени сервиса httpd. Теперь этот файл обычно пустой, поскольку большинство опций настроек были перемещены в каталоги, упомянутые далее. Файл может быть использован для для специфичных настроек пользователя, имеющих глобальный эффект в Apache2.

    mods-available: этот каталог содержит конфигурационные файлы как для загрузки модулей, так и для их настройки. Тем не менее не все модули имеют отдельные файлы настройки.

    mods-enabled: содержит символьные ссылки на файлы в /etc/apache2/mods-available. Когда создается символьная ссылка на файл настроек модуля, он включается при следующем рестарте apache2.

    ports.conf: содержит инструкции, которые определяют какие TCP порты прослушивает Apache2.

    sites-available: этот каталог содержит файлы настроек для виртуальных сетевых узлов (Virtual Hosts) Apache2. Виртуальные сетевые узлы позволяют настраивать Apache2 на множество сайтов с отдельными конфигурациями.

    sites-enabled: подобно mods-enabled содержит символьные ссылки на каталог /etc/apache2/sites-available. Аналогично, когда файл настроек из sites-available получает здесь символьную ссылку, соответствующий ему сайт будет активен при следующем перезапуске Apache2.

    В дополнение к этому другие файлы настроек могут быть добавлены с использованием инструкции Include, а символы группировок могут использоваться для включения множества файлов настроек. Любая инструкция может быть добавлена в любой из этих файлов настроек. Изменения в основных конфигурационных файлах распознаются только после старта или рестарта Apache2.

    Сервер также читает файлы, содержащие типы mime документов; имя файла задается инструкцией TypesConfig, обычно через /etc/apache2/mods-available/mime.conf, который также может включать дополнения и переопределения, а по умолчанию используется /etc/mime.types.

    Общие настройки

    Этот раздел рассматривает существенные параметры настройки сервера Apache2. Обратитесь к документации по Apache2 для уточнения деталей.

    1. Apache2 по умолчанию поставляется с конфигурацией, дружественной к виртуальным хостам. Это означает, что он изначально настроен с единственным виртуальным хостом (используя инструкцию VirtualHost) который может быть изменен или использоваться как есть, если у вас единственный сайт, либо использоваться как шаблон для дополнительных виртуальных хостов, если у вас несколько сайтов. Если оставить его единственным, изначальный виртуальный хост будет обслуживать ваш сайт по умолчанию или пользователи сайта заметят, что введенный ими URL не совпадает с инструкцией ServerName любого из ваших созданных сайтов. Для изменения начального виртуального хоста отредактируйте файл /etc/apache2/sites-available/default.

    Если вы хотите настроить новый виртуальный хост или сайт, скопируйте этот файл в тот же каталог с новым именем. Например:

    Отредактируйте новый файл для настройки нового сайта, используя инструкции, описанные ниже.

    2. Инструкция ServerAdmin определяет адрес email для оповещения администратора сервера. Изначальное значение webmaster@localhost. Его надо изменить на ваш email адрес (если именно вы являетесь администратором сервера). Если возникает проблема с сайтом, Apache2 показывает сообщение об ошибке, содержащее этот адрес для оповещения о проблеме. Ищите эту инструкцию в файле настроек вашего сайта в каталоге /etc/apache2/sites-available.

    3. Инструкция Listen определяет порт, и в общем случае IP адрес, на которых Apache2 должен ожидать соединения. Если IP адрес не определен, Apache2 будет прослушивать все IP адреса, которые назначены компьютеру, где он запущен. Значение по умолчанию для Listen 80. Замените его на 127.0.0.1:80 чтобы Apache2 прослушивал только интерфейс внутренней петли, что сделает его недоступным из интернета; на 81 (например) для изменения порта доступа или оставьте как есть для стандартного функционирования. Эта инструкция может быть найдена и изменена в единственном файле /etc/apache2/ports.conf.

    4. Инструкция ServerName необязательная и определяет на какой адрес FQDN ваш сайт должен отвечать. Изначальный виртуальный хост не имеет ServerName, поэтому отвечает на все запросы не соответствующие директивам ServerName других виртуальных хостов. Если вы приобрели доменное имя ubunturocks.com и хотите прописать его на вашем Ubuntu сервере, значение ServerName для файла настроек вашего виртуального хоста должно быть ubunturocks.com. Добавьте эту инструкцию в файл нового виртуального хоста, который вы создавали ранее (/etc/apache2/sites-available/mynewsite).

    Возможно вы захотите, чтобы ваш сайт откликался на www.ubunturocks.com, поскольку многие пользователи считают префикс www необходимым. Используйте для этого инструкцию ServerAlias. Вы можете также применять для ServerAlias групповые символы.

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

    5. Инструкция DocumentRoot определяет где Apache2 будет искать файлы, которые являются содержимым сайта. По умолчанию используется значение /var/www, как определено в /etc/apache2/sites-available/default. Если желаете, можете изменить это значение в файле сайта вашего виртуального хоста и не забудьте создать этот каталог, если необходимо!

    Включите новый VirtualHost, используя утилиту a2ensite, и перезапустите Apache2:

    Аналогично используйте утилиту a2dissite для выключения сайтов. Это может быть полезным при разрешении проблем с несколькими виртуальными хостами:

    Настройки по умолчанию

    Этот раздел раскрывает возможности настроек значений по умолчанию сервера Apache2. Например, если вы добавили виртуальный хост, значения, которые вы определите в его конфигурации переопределят значения для данного виртуального хоста. Для инструкций, не определенных в настройках виртуального хоста, будут использоваться значения по умолчанию.

    1. DirectoryIndex — это страница по умолчанию, выдаваемая сервером, когда пользователь запрашивает индекс каталога указанием прямого слеша (/) после его имени.

    Например, когда пользователь запрашивает страницу http://www.example.com/this_directory/, он (или она) получит либо страницу, определяемую DirectoryIndex, если она существует, список файлов в каталоге, сгенерированный сервером, если не существует и определена опция Indexes, или страницу Permission Denied (недостаточно прав доступа) в остальных случаях. Сервер попытается найти один из файлов, перечисленных в инструкции DirectoryIndex и вернет первый найденный. Если не найдет ни одного и если установлено Options Indexes для данного каталога, сервер создаст и вернет список в формате HTML подкаталогов и файлов в этом каталоге. Значение по умолчанию, находящееся в /etc/apache2/mods-available/dir.conf это «index.html index.cgi index.pl index.php index.xhtml index.htm». Поэтому, если Apache2 найдет файл в запрашиваемом каталоге, соответствующий любому из этих имен, первый же из них будет показан [клиенту].

    2. Инструкция ErrorDocument позволяет вам определить файл для Apache2, используемый при определенных ошибочных событиях. Например, если пользователь запросил ресурс, который не существует, возникнет ошибка 404. По умолчанию Apache2 просто вернет код возврата HTTP 404. Прочитайте /etc/apache2/conf.d/localized-error-pages для детальных инструкций по использованию ErrorDocument, включающий расположение файлов примеров.

    3. По умолчанию сервер пишет журнал обмена в файл /var/log/apache2/access.log. Вы можете поменять это для каждого сайта в файлах настроек ваших виртуальных хостов с помощью инструкции CustomLog или спуститься на уровень настроек по умолчанию, определяемых в /etc/apache2/conf.d/other-vhosts-access-log. Вы можете также определить файл, в который будут сохраняться ошибки, через инструкцию ErrorLog, которая изначально указывает на var/log/apache2/error.log. Они хранятся отдельно от журнала обмена чтобы помочь в решении проблем с вашим сервером Apache2. Вы можете также определить LogLevel (изначально значение «warn») и LogFormat (смотрите /etc/apache2/apache2.conf для значений по умолчанию).

    4. Некоторые опции задаются на уровне каталогов вместо уровня сервера. Options — одна из таких директив. Раздел Directory заключается в XML -подобные теги, как показано ниже:

    Инструкция Options внутри раздела Directory принимает одно или несколько из следующих значений (среди прочего), разделенные пробелами:

    Includes — Позволяет включения на стороне сервера. Включения на стороне сервера позволяют файлам HTML включать другие файлы. Смотрите документацию Apache SSI (сообщества Ubuntu) для дополнительных деталей.

    IncludesNOEXEC — Позволяет включения на стороне сервера, но блокирует команды #exec и #include в CGI сценариях.

    Indexes — Показывает форматированный список содержимого каталога, если не найдены DirectoryIndex (как например index.html) в запрашиваемом каталоге.

    Multiview — Поддерживает зависящие от содержимого просмотры; эта опция по умолчанию выключена по соображениям безопасности. Смотрите документацию Apache2 по этой опции.

    SymLinksIfOwnerMatch — Следует по символическим ссылкам если целевой файл или каталог имеет того же владельца, что и ссылка.

    Настройки httpd

    Этот раздел раскрывает некоторые основные конфигурационные настройки сервиса httpd.

    LockFile — инструкция LockFile устанавливает путь к блокирующему файлу (lockfile) когда сервер скомпилирован с опцией USE_FCNTL_SERIALIZED_ACCEPT или USE_FLOCK_SERIALIZED_ACCEPT. Он должен сохраняться на локальном диске. Стоит оставить значение по умолчанию если только каталог журналов не расположен на NFS ресурсе. В противном случае исходное значение стоить изменить на каталог локального диска с правами на чтение только для root.

    PidFile — инструкция PidFile устанавливает файл, в который сервер записывает ID своего процесса (pid). Этот файл должен быть доступен на чтение только root. В большинстве случаев этот параметр стоит оставить без изменений.

    User — инструкция User устанавливает userid (ID пользователя), используемый сервером для ответа на запросы. Эта настройка определяет права доступа сервера. Любые файлы, недоступные этому пользователю, также будут недоступны для посетителей вашего сайта. По умолчанию используется пользователь «www-data».

    Group — инструкция Group аналогична директиве User. Group устанавливает группу под которой сервер будет отвечать на запросы. Значение по умолчанию также «www-data».

    Модули Apache2

    Apache2 — модульный сервер. Это означает, что только самая базовая функциональность включена в ядро сервера. Расширенные возможности доступны через модули, которые могут быть загружены в Apache2. По умолчанию базовый набор модулей включается в сервер на этапе компиляции. Если сервер скомпилирован для использования динамически загружаемых модулей, то модули могут быть скомпилированы отдельно и добавлены в любое время с использованием инструкции LoadModule. В противном случае Apache2 должен быть перекомпилирован для добавления или удаления модулей.

    Ubuntu компилирует Apache2 с возможностью динамической загрузки модулей. Конфигурационные директивы могут быть включены по условию присутствия соответствующего модуля в блоке .

    Вы можете установить дополнительные модули Apache2 и использовать их с вашим интернет сервером. Например, запустите следующую команду в терминале для установки модуля авторизации MySQL:

    Ищите дополнительные модули в каталоге /etc/apache2/mods-available.

    Используйте утилиту a2enmod для включения модуля:

    Аналогично a2dismod выключит модуль:

    Настройка HTTPS

    Модуль mod_ssl добавляет важную возможность для сервера Apache2 — возможность шифрованных соединений. Таким образом, когда ваш браузер соединяется с использованием SSL , используется префикс https:// в начале адреса URL в строке навигации.

    Модуль mod_ssl доступен в пакете apache2-common. Выполните следующую команду в терминале для включения этого модуля:


    Настройки по умолчанию для HTTPS находятся в файле /etc/apache2/sites-available/default-ssl. Чтобы Apache2 предоставлял HTTPS, также требуются файлы ключа и сертификата. Изначальная настройка HTTPS использует сертификат и ключ, созданные пакетом ssl-cert. Они подходят для тестирования, но должны быть заменены на сертификат, соответствующий вашему сайту или серверу. Для информации по созданию ключей и получению сертификатов смотрите раздел Сертификаты.

    Для настройки Apache2 для HTTPS введите следующее:

    С Apache2, теперь настроенным на HTTPS, перезапустим сервис для разрешения новых настроек:

    Вы можете получить доступ к страницам защищенного сервера набрав https://your_hostname/url/ в адресной строке вашего браузера.

    Права разделения записи

    Чтобы более одного пользователя имели право записи в один и тот же каталог, необходимо дать право записи группе, которая их объединяет. Следующий пример предоставляет права на запись в каталог /var/www для группы «webmasters».

    Ссылки

    Документация по Apache2 содержит более глубокую информацию по директивам настройки. Также смотрите пакет apache2-doc для официальной документации по Apache2.

    Смотрите сайт документации по Mod SSL для дополнительной информации по SSL .

    Apache Cookbook от O’Reilly — отличный ресурс по созданию специфичных настроек для Apache2.

    HackWare.ru

    Этичный хакинг и тестирование на проникновение, информационная безопасность

    Настройка Apache в Windows

    Это заметка по настройке веб-сервера в Windows, её можно считать продолжением статьи «Установка веб-сервера (Apache 2.4, MySQL 8.0, PHP 7, phpMyAdmin) на Windows 10». Материал в процессе подготовки, но поскольку поступил вопрос, на который она содержит ответ, было решено опубликовать его в таком виде.

    Подключение виртуальных хостов Apache в Windows

    Виртуальные хосты могут быть привязаны к имени хоста (например, study.loc), к IP (например, 127.0.0.3) и к порту (*:81). Второй и третий способ хороши тем, что нам не придётся решать вопрос о DNS преобразованиях имени нашего виртуального хоста (это, обычно, достигается изменением системного файла C:\Windows\System32\drivers\etc\hosts либо использованием личного DNS сервера с соответствующими записями).

    Рассмотрим все три способа. Но начнём с небольшой подготовки. Создадим каталог, в котором будем размещать наши виртуальные хосты. Например, C:\Server\data\htdocs\virthosts\. А в этом каталоге создадим три новых папки: host1, host2, host3. В каждой из них создайте по индексному файлу (index.html) с любым содержанием, который позволил бы идентифицировать, что вы попали в нужный хост. Я сделаю следующие записи в соответствующих индексных файлах хостов, для первого хоста:

    Теперь приступим к настройки виртуальных хостов.

    В файле C:\Server\bin\Apache24\conf\httpd.conf найдите и раскоментируйте следующую строку:

    В файле C:\Server\bin\Apache24\conf\extra\httpd-vhosts.conf закомментируйте (или удалите) те строки, которые приведены по умолчанию.

    Виртуальные хосты на основе IP

    Для виртуальных хостов, которые привязаны к IP, требуются несколько IP. Тем не менее, на своём локальном сервере вы можете проделать этот фокус, поскольку в IPv4, в 127.0.0.1 также отражается любой адрес в пределах от 127.0.0.0 до 127.255.255.255.

    Попробуйте набрать в браузере 127.0.0.1, а затем попробуйте 127.0.0.2, 127.0.0.3, 127.0.0.4, 127.0.0.5 и т.д. Как видите, IP у нас много, и к каждому из них можно привязать виртуальных хост.

    Добавьте в файл C:\Server\bin\Apache24\conf\extra\httpd-vhosts.conf следующие строки:

    Перезапустите веб-сервер (делайте перезапуск после каждого изменения файла настройки):

    А теперь откройте 127.0.0.2:

    При этом на другие IP 127.0.0.*, а также на localhost наши настройки влияние не оказывают.

    Виртуальные хосты на основе портов (разные сайты на разных портах)

    Теперь добавьте в файл C:\Server\bin\Apache24\conf\extra\httpd-vhosts.conf строки:

    Порт можете заменить на любой другой, не занятый в вашей системе. Также вместо звёздочки можете указать конкретный IP. Перезапустите и откройте в браузере http://localhost:81:

    Виртуальные хосты на основе имени хоста

    Следующий способ требует редактирование файла C:\Windows\System32\drivers\etc\hosts (либо внесение записи в ваш собственный DNS сервер). Придумайте любое имя хоста, желательно, не совпадающее с реальным. Примеры supersite, study.loc, video.ofme. Я возьму в качестве примера study.loc. Откройте файл C:\Windows\System32\drivers\etc\hosts и добавьте туда:

    А в файл C:\Server\bin\Apache24\conf\extra\httpd-vhosts.conf добавьте строки:

    Перезапустите сервер и перейдите в браузере к http://study.loc:

    Аналогично настраиваются и субдомены (dir1.study.loc, dir2.study.loc, dir3.localhost и т.п.).

    Автоматическое создание виртуальных хостов / субдоменов

    В файле C:\Server\bin\Apache24\conf\httpd.conf найдите и раскоментируйте следующую строку:

    А также, если вы не сделали этого ранее, строку:

    В директории C:\Server\data\htdocs\virthosts\ создайте папку localhost (теперь именно её содержимое будет отображаться, когда вы в браузере набираете http://localhost).

    В файл C:\Server\bin\Apache24\conf\extra\httpd-vhosts.conf добавьте следующую строку

    Теперь любая папка, созданная в C:\Server\data\htdocs\virthosts\ будет доступна по адресу вида

    При открытии http://host1.localhost мы увидим содержимое C:\Server\data\htdocs\virthosts\host1\, при открытии http://super.localhost увидим сайт в C:\Server\data\htdocs\virthosts\super\ и т.д.

    Как сделать резервную копию БД MySQL в Windows?

    Резервную копию можно создать в графическом веб-интерфейсе в phpMyAdmin. Если вы хотите сделать бэкап сразу всех баз данных, то перейдите на главную страницу phpMyAdmin, оттуда перейдите во вкладку Экспорт. Далее всё достаточно просто, в том числе и с дополнительными опциями.

    Аналогично при бэкапе отдельных баз данных: перейдите на страницу интересующей БД, а далее в Экспорт.

    Если вы по каким-то причинам хотите сделать бэкап базы данных MySQL из командной строки в Windows, то для этого понадобиться утилита mysqldump.exe, она поставляется вместе с MySQL и расположена в каталоге C:\Server\bin\mysql-8.0\bin\.

    Для её использования откройте командную строку и перетащите туда программу. Программу можно использовать с разнообразными опциями:

    Если вы хотите сделать резервную копию всех баз данных в один файл, то выполните:

    Кстати, файл нужно искать в той папке, которую вы видите в приглашении командной строки.

    Для того, чтобы сделать резервную копию только одной базы данных (например, rsyslog):

    Чтобы сделать резервную копию нескольких баз данных используйте опцию —databases, а после него через пробел перечислите желаемые для бэкапа базы данных:

    Чтобы сделать резервную копию только одной таблицы (wp_posts) из базы данных (wordpress):

    Для того, чтобы сделать резервную копию нескольких таблиц, перечислите их через пробел после названия БД:

    Краткая характеристика основных директив конфигурационных файлов Apache

    Настройка ограничения доступа к папкам сервера

    Настройка SSL для Apache в Windows (переход с HTTP на HTTPS)

    Если вы хотите использовать SSL в веб-сервере Apache под Windows, то вам необходимы три файла: *.key, *.csr и *.crt. Если вы купили валидный SSL сертификат для вашего сайта, то эти файлы вам должны прислать после покупки. Их может быть больше – среди них могут быть промежуточные сертификаты.

    Если вы хотите настроить SSL на локальном веб-сервере, то все эти файлы можно сгенерировать самостоятельно, т.е. создать самоподписанный сертификат. Этот сертификат не является валидным (не может быть проверен с участием третьей стороны), но для упражнения в переходе с HTTP на HTTPS он вполне подойдёт.

    Предполагается, что вы ставили веб-сервер по этой инструкции – иначе замените абсолютные пути на свои собственные.

    Откройте командную строку Windows (WIN + x, далее выберите «Командная строка»). В командной строке введите команды:

    При вводе последней команды появятся запросы на английском языке. Ниже следует их перевод.

    Вас попросят ввести информацию, которая будет включена в запрос вашего сертификата. То, что вы будете вводить, называется Distinguished Name или DN. Там всего несколько полей, которые можно оставить пустыми. В некоторых полях будут значения по умолчанию. Если вы введёте ‘.’, то поле будет оставлено пустым.

    Двухбуквенное имя страны (двухбуквенный код)

    Название штата или провинции/области (полное имя)

    Название населённого пункта (например, города)

    Название организации (т.е. компании).

    Подразделение организации (т.е. отдел)

    Общее имя (например, FQDN сервера или ВАШЕ имя). Можете ввести localhost.

    Пожалуйста, введите следующие «дополнительные» атрибуты для отправки с вашим запросом сертификата

    • Пароль запроса:
    • Опциональное имя компании:

    Теперь выполните команду:

    В результате в каталоге C:\Server\bin\Apache24\bin\ должны появиться три новых файла:

    Из них нам понадобятся только два:

    При использовании сертификатов для настройки реального веб-сайта, удобнее создать виртуальный хост с примерно следующими настройками:

    Для настройки использования SSL на локальном веб-сервере Apache в Windows следуйте инструкции ниже.

    В каталоге C:\Server\ создайте новую папку certs и переместите туда файлы localhost.key и localhost.crt.

    В директории C:\Server\bin\Apache24\conf\ откройте текстовым редактором файл httpd.conf. В самый низ добавьте туда строки:

    Обратите внимание, что вам может понадобиться отредактировать следующие директивы

    • DocumentRoot — укажите путь до сайтов на сервере
    • ServerName — укажите имя вашего хоста, если то не локалхост

    Обратите внимание, что мы не просто поместили эти строки в конфигурационный файл, а заключили их в контейнер VirtualHost. Дело в том, что если этого не сделать, то директива SSLEngine on включит SSL для всего веб-сервера, и даже при попытке открыть сайты на 80 порту, эти подключения будут обрабатываться как HTTPS, что вызовет ошибку «Bad Request. Your browser sent a request that this server could not understand». По этой причине эти настройки помещены в контейнер виртуального хоста. Обратите внимание, что используется ключевое слово _default_ — то есть сюда будут собираться все запросы на 443 порт если они не предназначены для другого хоста, который также настроен. То есть при желании вы можете создать больше виртуальных хостов для работы с HTTPS, при этом вместо _default_ указывайте IP хоста или символ * (звёздочка).

    После этого сохраните изменения, закройте файл и перезапустите веб-сервер.

    Для проверки сделанных изменений, перейдите по адресу https://localhost/ (протокол HTTPS). Поскольку сертификат является самоподписанным, то появится такое сообщение:

    К самоподписанным сертификатам нет доверия и эту ошибку нельзя убрать без добавления таких сертификатов в доверенные. Для перехода нажмите «Всё равно продолжить».

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

    Файл .bat для управления сервером (установка сервера, запуск, перезапуск и др.)

    Создайте файл RUN.bat и скопируйте в него:

    Сохраните и закройте файл. Запускайте файл двойным кликом. При этом будет появляться текстовое меню для управления веб-сервером:

    Включение модулей по отображению информации и статуса сервера

    Если вы хотите удалённо мониторить состояние сервера (возможно, с помощью автоматизированных скриптов или программ), то вам может пригодиться включение модулей mod_status и mod_info.

    Настройка apache Для перехода на сайт с внешнего ip (с интернета)

    Есть:
    1. Виртуальная машина
    2. веб сервер на ubuntu 14_04: apache2, phpmyadmin, mysql
    3. размещенный сайт на wordpress в локальной сети с адресом http://172.20.10.55
    4. переброс портов с внешнего ip xxx.xxx.xxx.xxx:88 -> 172.20.10.55:80

    Требуется:
    Обеспечить доступ к сайту как с локального адреса http://172.20.10.55, так и с внешнего http://xxx.xxx.xxx.xxx:88
    (использовать http://xxx.xxx.xxx.xxx:88 адрес в локальной сети не представляется возможным)

    На данный момент доступ к сайту обеспечивается только с http://172.20.10.55, при переходе на http://xxx.xxx.xxx.xxx:88 пишет index of/ apache/2.4.7 (ubuntu) server at xxx.xxx.xxx.xxx port 88

    файла host
    127.0.0.1 172.20.10.55 www.172.20.10.55
    127.0.0.1 xxx.xxx.xxx.xxx www.xxx.xxx.xxx.xxx
    127.0.0.1 localhost
    127.0.1.1 ubuntu

    # The following lines are desirable for IPv6 capable hosts
    ::1 ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters

    Есть предположение, что доступ к сайту из интернета не происходит из-за того, что в настройках вордпресса указан адрес сайта локальной сети, но дело в том, что если поставить внешний ip в настройки вордпресса, то доступ к сайту ил зокалки пропадет.

    Помогите, пожалуйста, решить данную проблему, ребят.

    Илон Маск рекомендует:  Snmp протокол принципы, безопасность, применение
  • Понравилась статья? Поделиться с друзьями:
    Кодинг, CSS и SQL