Моя виртуальная машина находится в закрытой сети, поэтому я не могу использовать apt install apache2
. Вместо этого я установил вручную, выполнив следующие шаги:
tar -xzvf httpd-2.4.51.tar.gz
в/home/my_username
каталоге, получениеhttpd-2.4.51
каталога- Размещено
apr-1.7.0.tar.gz
,apr-iconv-1.2.2.tar.gz
иapr-util-1.6.1.tar.gz
подhttpd-2.4.51/srclib/
иtar -xzvf
все из них - Переименовал эти распакованные каталоги APR, опустив их версии, например,
apr-util-1.6.1
вapr-util
withmv apr-util-1.6.1 apr-util
tar -xzvf pcre-8.45.tar.gz
в/home/my_username
каталоге, получениеpcre-8.45
каталогаcd pcre-8.45
и./configure --prefix=/usr/local/pcre; make; make install
- Наконец-то установил Apache
./configure --prefix=/usr/local/apache2 --with-pcre=/usr/local/pcre; make; make install
Я проверил /usr/local/apache2
папку, все вроде бы в порядке. Но когда я попытался запустить Apache с помощью systemctl start apache2
cmd сказал Failed to start apache2.service: Unit apache2.service not found.
. Возможно ли, что устройство не может распознать Apache даже после установки, или мне следует зарегистрировать Apache как службу Linux? Большинство решений в сети предполагают использование подхода, apt install apache2
и система обработает все необходимые вещи на заднем плане. В моем случае, я думаю, я пропустил некоторые настройки конфигурации, поэтому я застрял здесь. Любые предложения приветствуются.
решение1
Попробуйте загрузить .deb
пакет для вашего дистрибутива и установить его dpkg
. (например dpkg -i package.deb
)
источник:https://pkgs.org/download/apache2
решение2
Без доступа в интернет очень сложно собрать apache2 со всеми зависимостями. Альтернативный вариант: установите Ubuntu 20.04 с доступом в интернет (можно использовать Ubuntu 20.04 live iso, запущенный с usb).
Run in the terminal mkdir ${HOME}/apache2 && cd apache2
Чтение ответовhttps://askubuntu.com/search?q=recursively+list+dependencies
Download the packages to the apache2 folder
apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances apache2 | grep "^\w" |grep -v "i386" | sort -u)
grep -v "i386" (To ignore the i386 ones)
Скопируйте папку apache2 на виртуальную машину без интернета.
In the apache2 folder, run sudo dpkg -i *.deb in the terminal