Настройка и установка Apache httpd


82

Это мой первый раз, когда я пытаюсь установить HTTP-сервер Apache локально в свой ящик как обычный пользователь (без полномочий root).

Я загрузил версию Apache 2.4.1 HTTP-сервера Apache [http://httpd.apache.org/download.cgi]. Однако, когда я пытаюсь собрать и установить локально в своем ящике, я получаю ошибку ниже:

httpd/httpd-2.4.1 1059> ./configure
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu

Configuring Apache Portable Runtime library ...

checking for APR... no
configure: error: APR not found.  Please read the documentation.

Я не уверен, какую зависимость он ищет - я имею в виду, что пакет загрузки не содержит ее? Что мне нужно сделать для создания / развертывания HTTP-сервера Apache?

Заранее спасибо.


1
@JimGarrison, тогда почему не закрывается / не перемещается?
Pacerier

Ответы:


132

Когда он сообщает вам, Please read documentationэто означает, что вы должны прочитать документацию Apache ( http://httpd.apache.org/docs/2.4/install.html ), в которой говорится:

скачайте последние версии APR и APR-Util из Apache APR , распакуйте их в ./srclib/apr и ./srclib/apr-util (убедитесь, что в доменных именах нет номеров версий; например, дистрибутив APR должен быть под ./srclib/apr/)

тогда делай

./configure --with-included-apr

`httpd / httpd-2.4.1 1062> ./configure --with-included-apr проверка выбранного макета ... Apache проверка работоспособности mkdir -p ... да проверка grep, который обрабатывает длинные строки и -e .. . / bin / grep unknown-linux-gnu проверка типа целевой системы ... x86_64-unknown-linux-gnu Настройка переносимой библиотеки времени выполнения Apache ... configure: error: Связанный APR запрошен, но не найден в ./srclib/. Загрузите и распакуйте соответствующие пакеты apr и apr-util в ./srclib/. `Какой правильный сайт нужно скачать и где мне установить
Программист

3
Сладкий успех ... нужно изменить строки в Makefile: #PROGRAM_LDADD = buildmark.o $ (HTTPD_LDFLAGS) $ (PROGRAM_DEPENDENCIES) $ (PCRE_LIBS) $ (EXTRA_LIBS) $ (AP_LIBS) $ (LIBS) ----> PROGRAM_LDADD = PROGRAM_LDADD = PROGRAM_LDADD = o $ (HTTPD_LDFLAGS) $ (PROGRAM_DEPENDENCIES) $ HOME / lib / usr / local / lib / libpcre.a $ (EXTRA_LIBS) $ (AP_LIBS) $ (LIBS)
Программист

8
Обратите внимание на ./srclibсредство srclibкаталога внутри вашего httpd-xxxкаталога
HaoQi Li

20
Почему они просто не включают это для вас? Это кажется пустой тратой времени
Дэвид Уильямс

1
Есть ли какая-то выгода от предварительной установки apr и apr-util отдельно как независимых пакетов вместо того, чтобы просто включать их исходный код в apache?
Зишан

38

Для Ubuntu 11.10 этот вариант работает хорошо:

 # APR

wget http://mirrors.axint.net/apache//apr/apr-1.4.6.tar.gz

tar -xvzf apr-1.4.6.tar.gz

cd apr-1.4.6/

./configure

make

make install

cd ..

# APR Utils

wget http://mirrors.axint.net/apache//apr/apr-util-1.4.1.tar.gz

tar -xvzf apr-util-1.4.1.tar.gz

cd apr-util-1.4.1

./configure --with-apr=/usr/local/apr

make

make install

cd ..

# Apache

wget http://apache.petsads.us//httpd/httpd-2.4.1.tar.gz

tar -xvzf httpd-2.4.1.tar.gz

cd httpd-2.4.1

./configure --enable-file-cache --enable-cache --enable-disk-cache --enable-mem-cache --enable-deflate --enable-expires --enable-headers --enable-usertrack --enable-ssl --enable-cgi --enable-vhost-alias --enable-rewrite --enable-so --with-apr=/usr/local/apr/

make

make install

cd ..

Вы можете узнать об этом подробнее ниже

Источник: VaporCreations.com


Если вы не являетесь пользователем root, вам нужно будет использовать префикс sudo в вызовах «make install»
Пол Грегуар

Благодарю. Мне не хватало нескольких параметров для ./configure
Шон Бин

После make installтого, как запустить службу httpd на Red Hat Enterprise Linux Server версии 7.4 (Maipo)?
Чаминда Бандара

26

Если у вас Debian / Ubuntu, вы можете просто:

apt-get install libapr1-dev libaprutil1-dev

потом ./configure

Готово


это поможет мне для пользователей ubuntu
haidarvm

20

Вот шаги, как я установил apache-httpd для пользователей без полномочий root:

  1. Загрузите и извлеките apache-httpd-2.4.2 (но перед ./configuring, созданием и установкой выполните следующие действия :)
  2. Загрузите и распакуйте APR & APR-UTIL в папки "./srclib/apr" & "./srclib/apr-util". Для этого требуется ./configure --with-apr =. / Apache / httpd-2.4.2 / srclib / apr (and) --with-included-apr (options).
  3. Загрузите, распакуйте, ./configure (с) --prefix = localURL, сделайте и установите PCRE в папку "./pcre". Для этого требуется ./configure --with-pcre = / home / username / apache / pcre (опция).
  4. Настройте apache-httpd, введя следующую команду (мне нравится включать определенные параметры, как указано в приведенной ниже команде): ./configure --enable-file-cache --enable-cache --enable-disk-cache --enable-mem -cache --enable-deflate --enable-expires --enable-headers --enable-usertrack --enable-cgi --enable-vhost-alias --enable-rewrite --enable-so --with-apr = /home/username/apache/httpd-2.4.2/srclib/apr --prefix = / home / username / apache / httpd-2.4.2 / --with-included-apr --with-pcre = / home / username / apache / pcre Примечание. При настройке apache-httpd используйте параметр «--enable-ssl» ТОЛЬКО если установлен OpenSSL, в противном случае НЕ включайте его.
  5. Теперь в командной строке введите команду make и make install.
  6. Откройте и настройте файл httpd.conf, например: «vi /home/eddie_kumar/apache/httpd-2.4.2/conf/httpd.conf»

ВАЖНО : не забудьте изменить порт по умолчанию с 80 на другой, например 8080, это особенно важно для пользователя без полномочий root. (Как? Открыть httpd.conf -> поиск «Слушать 80» -> изменить его на «Слушать 8080».

И все, теперь откройте ваш браузер и введите «localhost: 8080 », он должен отобразить «Работает!».


Если вы пользователь debian, просто выполните «apt-get install libpcre3-dev»
Reza S

После make installтого, как запустить службу httpd на Red Hat Enterprise Linux Server версии 7.4 (Maipo)?
Chaminda Bandara

3

Если вы используете Fedora, вы можете использовать yum для установки APR, APR-Util и PCRE . Вам также необходимо загрузить apr-devel, apr-util-devel и pcre-devel.

При этом вы можете просто запустить следующую команду на своем терминале и больше никаких ошибок типа " configure: error: APR not found .. ..APR-Util и PCRE ".

yum -y install arp apr-devel apr-util apr-util-devel pcre pcre-devel 

Я использую Fedora 17 и планирую использовать сценарий оболочки для установки apache 2.4.3. Таким образом, yum работает довольно гладко, вместо того, чтобы вручную загружать apr, apr-util и pcre.


Фантастика! Непонятно, нужны ли вам версии -devel. Это лучший ответ, если вы используете Fedora или Redhat или экземпляр Amazon ec2 AWS, который является Redhat.
srock

1

1. Вам нужна APR (портативная среда выполнения apache), которая является основным компонентом веб-сервера Apache.

2. Если вы хотите сделать установку, вам может потребоваться учетная запись root

3, даже если нет, apache не может начать прослушивание непривилегированного порта (ниже 1024) без учетной записи root

4, получите root или попросите кого-нибудь с root установить apache из официального репозитория (я не знаю, какой дистрибутив вы используете), например, с помощью yum, apt-get и т. Д.


0

Ошибки, связанные с Apr или pcre, требуют загрузки источника, а процесс «настройки» Apache HTTPD должен быть осведомлен об этих расположениях источников в вашей файловой системе. Например: если вы загрузили исходный код APR по адресу ./srclib (относительно apache httpd), вы должны использовать
--with-included-apr в
качестве параметра конфигурации.

С другой стороны, если вы хотите не собирать, а устанавливать APR / APR-UTIL, вам понадобится следующее в CentOS / RedHat:
yum install apr-util-devel apr-devel
Однако может случиться так, что версия APR, предоставленная yum не соответствует ожиданиям этой версии Apache httpd. В этом случае вы можете загрузить APR и APR-UTIL и использовать параметр --with-included-apr.

Вы также можете собрать PCRE, используя тот же процесс «настройка, создание, выполнение установки», а затем продолжить с того места, где вы остановились, создавая Apache httpd.
Или вы можете установить pcre: yum install pcre-devel

Если при сборке PCRE: вы видите «compile: unrecognized option», то, возможно, вам понадобятся и другие зависимости: пожалуйста, смотрите подробности по адресу:
http://khanna111.com/wordPressBlog/2012/09/11/94087-2/
It также охватывает "mod_deflate" и "zlib".


0

Основные шаги

tar -xvf httpd-2.4.1-customized.tar -C ../
#Balancer folder will be created
tar -xvzf openssl-1.0.1.tar.gz  -C /balancer/
cd ->/balancer/openssl-1.0.1
./config --prefix=/usr/local/ssl/ shared zlib-dynamic enable-camellia
make depend
make
make install
tar -xvzf pcre-8.30.tar.gz -C ../balancer/

/balancer/pcre-8.30
./configure  --prefix=/usr/local/pcre/
make
make install

удалить pcre и openssl


0

Установка и компиляция сервера Apache на машине Ubuntu

Шаг 1. Установите Java JDK

sudo apt install openjdk-11-jdk

sudo gedit /etc/environment

JAVA_HOME="/usr/lib/jvm/openjdk-11"

source /etc/environment

echo $JAVA_HOME

проверить версию Java

javac --version

**** установить Другие необходимые пакеты: **

  sudo apt-get install apache2-dev -y 

sudo apt-get install libpcre3 libpcre3-dev

Шаг 2. Установка HTTP-сервера Apache

# 1 Для ubuntu установите инструменты разработки, включая компилятор C:

sudo apt-get install build-essential checkinstall

# 2 Загрузите и извлеките необходимые файлы

предполагая, что все файлы были загружены в каталог ~ / Downloads

Загрузите HTTP-сервер Apache httpd-2.4.41.tar.gz со страницы загрузки Apache ( https://httpd.apache.org/download.cgi )

и следующие необходимые библиотеки для компиляции HTTP-сервера apache:

**** Прочтите раздел требований ( http://httpd.apache.org/docs/2.4/install.html ) ***

# 3 Извлеките файлы tar

  • tar -xvf httpd-2.4.41.tar.gz
  • tar -xvf апр-1.7.0.tar.gz
  • tar -xvf апр-util-1.6.1.tar.gz
  • tar -xvf pcre2-10.34.tar.gz

после извлечения вы должны увидеть следующий список каталогов в ~ / Downloads

  • httpd-2.4.41
  • апр-1.7.0
  • апр-утиль-1.6.1
  • pcre2-10.34

# 4 Создайте каталог для HTTP-сервера apache

* убедитесь, что вы предоставили все права этому каталогу, чтобы во время компиляции файлы могли быть прочитаны / записаны

 sudo mkdir /home{your username here}/apache

Чтобы предоставить все разрешения для каталога apache:

sudo chmod -R 777 /home{your username here}/apache

# 5 скопируйте каталог arp и arp-util в ~ / Downloads / httpd-2.4.41 / srclib /

cd ~/Downloads

mv  apr-util-1.6.1  ~/Downloads/httpd-2.4.41/srclib/apr-util

 mv  apr-1.7.0  ~/Downloads/httpd-2.4.41/srclib/apr

# 6 Настроить исходники для компиляции. Опцию --prefix можно использовать для установки веб-сервера в место, где вы можете записывать файлы.

cd ~/Downloads/httpd-2.4.41/


./configure  --prefix=/home/{username here}/apache --with-pcre=~/Downloads/pcre2-10.34

ПРИМЕЧАНИЕ. Если у вас возникли проблемы при выполнении вышеуказанной команды, вы также можете попробовать

установка pcre в / usr / local / pcre, используя

./configure --prefix = / usr / local / pcre make sudo make install

команд, а затем выполнив следующие команды:

   cd ~/Downloads/httpd-2.4.41/

./configure --prefix = / home / {имя пользователя здесь} / apache --with-pcre = / usr / local / pcre

сделать

  sudo make install

Если вы все еще сталкиваетесь с некоторыми проблемами, убедитесь, что ~ / apache и его вложенный каталог имеют разрешения на чтение / запись. если не запустите **sudo chmod -R 777 /home{your username here}/apache**команду снова.

# 7 Скомпилируйте HTTP-сервер Apache.

cd ~/Downloads/httpd-2.2.25

sudo make

# 8 Установите HTTP-сервер Apache.

cd ~/Downloads/httpd-2.2.25

sudo make install

Необязательно # 9 для подготовки файла Hosts

sudo gedit /etc/hosts

27.0.0.1 локальный хост www.example.com

sudo gedit /home/{your username here}/apache/conf/httpd.conf

и скопируйте:

Listen 8000

ServerName www.example.com:8000

# 10 Протестируйте установку, чтобы убедиться, что HTTP-сервер Apache работает.

/home/{your username here}//apache/bin/apachectl -k start
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.