Краткое описание:
Apache HTTP Server (Apache для краткости) - это веб-сервер с открытым исходным кодом Apache Software Foundation: поскольку centos6 по умолчанию устанавливается с версией httpd2.2, он не имеет новых функций httpd2.4. , Так что вы можете использовать новые функции httpd2.4 для лучшего выполнения потребностей работы.
Приготовление:
1. Системная среда:
centos6.9
2. Требуемый пакет установки исходного кода:
apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz httpd-2.4.27.tar.bz2
3. Создайте каталог для хранения пакетов данных apr apr-util httpd
mkdir /app
Экспериментальные этапы:
0. Запросите имя пакета старой версии apache, удалите старую версию apache или найдите экспериментальную систему с чистой версией 6.9.
rpm -q httpd
rpm -e httpd
1. Установите комплект разработчика группы «Средства разработки»
yum groupinstall "Development tools"
2. Загрузите исходный код httpd2.4, установочный пакет arp, arp-util с официального сайта и разархивируйте его:
Официальный сайт: http://www.apache.org/index.html
cd /usr/local/src/ #把安装包刚放在这目录下
tar xvf apr-1.6.2.tar.gz
tar apr-util-1.6.0.tar.gz
tar httpd-2.4.27.tar.bz2
3. Скомпилируйте и установите зависимый апрель-1.6
В / usr / local / src /
cd apr-1.6.2
cat README #查看一下编译文档
执行configure脚本
./configure --prefix = / app / apr # Указать путь установки apr
make & make install #开始安装
4. Скомпилируйте и установите apr-util-1.6
cd apr-util-1.6.0 #进入apr-util目录
./configure --help #查看安装包放的路径
./configure --prefix=/app/apr-util --with-apr=/app/apr #--with-apr=/app/apr 指定的路径
make & make install #开始安装
Примечание. Если произошла ошибка: ожидаемая ошибка, необходимо установить пакет expat-devel
yum install openssl-devel pcre-devel expat-devel
5. Создайте учетную запись Apache
useradd -r -d /app/website -s /sbin/nologin apache -m
#-d /app/website 指定网站主页的路径,强制性创建 /app/website加上-m
6. Скомпилируйте и установите httpd-2.4
cd httpd-2.4.27
./configure --prefix = / app / httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr = / app / apr / --with-apr-util = / app / apr-util / --enable-modules = большинство --enable-mpms-shared = все --with-mpm = prefork
Подробные параметры компиляции:
–Prefix = / app / httpd24: указать путь к каталогу установки
--Enable-so: поддержка динамического общего модуля, без этого модуля PHP не будет работать с apache
--Enable-ssl: поддержка SSL, поддержка https
--Enable-cgi: запустить интерфейс cgi с внешними приложениями
--Enable-rewrite: поддержка перезаписи URL
--With-zlib: поддержка передачи сжатия веб-страниц
--With-pcre: поддерживаются расширенные регулярные выражения
--With-apr = / app / apr /: указать путь apr
--With-apr-util = / app / apr-util /: указать путь к apr-util
--Enable-modules = most: установить большинство модулей
--Enable-mpms-shared = all: поддерживает большинство общих модулей
--With-mpm = prefork: установить режим prefork по умолчанию для режима работы mpm
После завершения компиляции выполните следующую команду
сделать и сделать установку
Если сообщается об ошибке, установите любой отсутствующий пакет, а затем выполните приведенную выше команду установки.
yum install openssl-devel pcre-devel
7. Измените основной файл конфигурации, чтобы закомментировать пользователя по умолчанию, чтобы разрешить доступ пользователю apach
Основной файл конфигурации: /app/httpd24/conf/httpd.conf
vim /app/httpd24/conf/httpd.conf
user apache #添加apache 用户
group apache #添加apache组
Documentroot /app/website #把默认的主站点改成/app/website
<directory /app/website> #修改权限
Require all granted #允许所有
8. Чтобы упростить использование команд, вам нужно добавить путь к переменной среды, отредактировать двоичную программу, чтобы система могла найти
vim /etc/profile.d/httpd24.sh
PATH=/app/httpd24/bin:$PATH
9. Установите скрипт запуска,
vim /etc/init.d/httpd24
apachectl=/app/httpd24/bin/apachectl
httpd=${HTTPD-/app/httpd24/bin/httpd} #字符串处理的变量方式
pidfile=${PIDFILE-/app/httpd24/logs/httpd.pid}
lockfile=${LOCKFILE-/var/lock/subsys/httpd24}
Установить загрузочную запись
первого шага:
cp / usr / local / apache2 / bin / apachectl /etc/init.d/httpd
Второй шаг:
vim /etc/init.d/httpd
добавляет две строки текста под первой строкой #! / Bin / sh,
# chkconfig: 35 70 30
где 35 относится к запуску службы на уровнях 3 и 5 70: относится к службе загрузки В 70-разрядном значении 30 относится к выключению и выключению службы в 30-разрядном режиме, общий порядок запуска службы и последовательность выключений равны 100.
# description: Apache
Описательная информация здесь # больше не пробный комментарий, а специальное использование в списке услуг.
chkconfig --add httpd24 # Добавить запуск служебного скрипта
chkconfig httpd24 при загрузке #set
запуск службы httpd24
10. Создать тестовую страницу
Создайте главную страницу сайта и отредактируйте содержание главной страницы напрямую, если она уже была создана
MKDIR / приложение / веб-сайт
echo / app / website> index.html
11. Запустите httpd
служба http24 start
12. Когда браузер обращается к странице, появляется содержимое / app / website, указывающее, что эксперимент был успешным.
Сообщение об ошибке:
Решение:
chmode -R +x /app/website
chown -R apache:apache /app/website
Добавить разрешения в соответствии с реальной ситуацией, владелец или принадлежит к группе
Больше похожих вопросов: https://blog.csdn.net/a1344714150/article/details/95341261
Вопросы, требующие внимания:
1. httpd2.4 зависит от apr, а пакеты arp-util должны быть версии 1.4 или выше
2. В процессе компиляции и установки apr или httpd вы можете установить следующие пакеты для устранения ошибки
yum install openssl-devel pcre-devel expat-devel
3. Версия httpd 2.4, поставляемая с компакт-диском пакета программного обеспечения apr, от которого зависит centos6.9, относительно низкая, поэтому вам нужно установить более высокую версию, версия пакета, зависящая от centos7, поставляется с более высокой версией, соответствовать требованиям, установить httpd 2.4 можно использовать.