Как установить PHP5.6 при использовании apache2.4.28 complile из источника на Ubuntu 16.04?

Я пытаюсь скомпилировать Apache 2.4.28 из источника, я не могу использовать команду

apt-get install apache2

Поскольку этот Apache установки команды 2.4.18 только.

Вот мой шаг установки:

  • Зависимость от установки

    apt-get install build-essential 
    apt-get install libexpat1-dev
    apt-get install libpcre3-dev libssl-dev 
    
  • Загрузите apache2.4.28

    cd /usr/local/src    
    wget http://mirrors.viethosting.com/apache//apr/apr-1.6.2.tar.gz 
    wget http://mirrors.viethosting.com/apache//apr/apr-util-1.6.0.tar.gz
    wget http://archive.apache.org/dist/httpd/httpd-2.4.28.tar.gz
    
  • Скомпилируйте апачские 2.4.28

    tar xzvf apr-1.6.2.tar.gz
    tar xzvf apr-util-1.6.0.tar.gz
    tar xzvf httpd-2.4.28.tar.gz
    mv apr-1.6.2/ httpd-2.4.28/srclib/apr
    mv apr-util-1.6.0/ httpd-2.4.28/srclib/apr-util
    ./configure --prefix=/etc/apache2 --enable-mods-shared="reallyall" --enable-mpms-shared="all"
    

    Configure result

    make && make install
    

    enter image description here

    ln -s /etc/apache2/bin/apachectl /etc/init.d/apache
    update-rc.d apache defaults----> It has this warning "insserv: warning: script 'apache' missing LSB tags and overrides"
    
    service apache start
    

После выполнения вышеупомянутых шагов был выполнен Apache 2.4.28. Но я, когда я использую

apache2 -v ----> it's not show the version of apache2

enter image description here

Затем я устанавливаю PHP5.6 как это:

apt-get install software-properties-common
add-apt-repository ppa:ondrej/php
apt-get update
apt-get install php5.6

Когда я использую эту команду, она не только устанавливает php5.6, но также и устанавливает apache2.4.18 и когда я тестирую PHP:

echo "hello world"; ----> it not show any thing.

И

root@ubuntu:~# ps -aux | grep httpd
root        991  0.0  0.1  75268  3848 ?        Ss   02:47   0:00 /usr/local/apache2/bin/httpd -k start

@Edit: как комментарий я изменяюсь:

./configure --prefix=/etc/apache2 --enable-mods-shared="reallyall" --enable-mpms-shared="all"

кому:

./configure --prefix=/usr/local/apache2 --enable-mods-shared="reallyall" --enable-mpms-shared="all"

Помогите мне, благодарите заранее.

0
задан 12 October 2017 в 02:52

2 ответа

Ай... При создании Apache + PHP может быть сделан +, процесс сборки может быть крайне долог + подверженный ошибкам.

Вот то, как я использую последний стабильный PPAs для установки последнего Apache + также PHP, который может быть легко переключен между 5,6 или 7.0 или 7.1 + скоро 7.2, когда это идет стабильное.

я делаю это в контейнерах LXD, таким образом, машина (размещают уровень) содержит только код по умолчанию + LXD + никакой код стека LAMP.

Вот то, как я установил бы последний стабильный LXD + Apache + MariaDB + PHP (5.6) + OpenSSL + HTTP2 + FPM (который теперь требуется для выполнения HTTP2), + Голубятня.

Шаги я использую для установки клиента, размещающего Стопки ЛАМПЫ контейнера LXD...

# Setup repositories, some of which require a bit of trickery

add-apt-repository ppa:ubuntu-lxc/lxd-stable < /dev/null
LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php </dev/null
LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/apache2 </dev/null

add-apt-repository ppa:pdoes/dovecot </dev/null

apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
echo "deb [arch=amd64,i386] http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.2/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/mariadb-$(lsb_release -sc).list

apt-get update

# Install PHP-5.6 based LAMP

apt-get install mariadb-server mariadb-client libmysqlclient-dev

apt-get install php5.6-fpm  php5.6-cli php5.6-mbstring php5.6-zip \
                php5.6-mysql php5.6-curl php5.6-xml php5.6-xmlrpc \
                php5.6-gd php5.6-soap php5.6-gmp php5.6-pspell \
                php5.6-sqlite3 php5.6-tidy php5.6-xsl php5.6-bz2 \
                php5.6-tidy php5.6-bcmath php5.6-bz2 php5.6-dba 

a2enmod mpm_event proxy_fcgi setenvif alias cgid ssl http2 \
        expires headers include rewrite
a2enconf php5.6-fpm

# update PHP CLI, when multiple versions installed
update-alternatives --set php /usr/bin/php5.6

# tune FPM pool + php.ini + opcache.ini + xdebug.ini + cold restart FPM
service service php5.6-fpm

Проявление этого подхода даст Вам последний стабильный Apache + PHP + OpenSSL + как упакованный код (никакие скрученные вручную сборки).

Вы также получите восходящие исправления ошибок, поскольку ошибки обнаружены.

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

BTW, Apache 2.4.28 просто выпущенный на прошлой неделе, таким образом, эта версия Apache появится в ondrej PPA, как только это упаковало + протестированный код.

Вероятный когда-то на этой неделе или затем, таким образом, Вы закончите с Apache 2.4.27 установленных сегодня.

1
ответ дан 2 November 2019 в 03:24

Я полагаю, что Вы сделали несколько вещей неправильно. Сначала эта строка:

./configure --prefix=/etc/apache2 --enable-mods-shared="reallyall" --enable-mpms-shared="all"

должен был быть:

./configure --prefix=/usr/local/apache2" --enable-mods-shared="reallyall" --enable-mpms-shared="all"

Ваш --prefix опция во время компиляции является неправильной. Я совет Вы удаляете его и фиксируете это --prefix опция

Как скомпилировать:

  1. Загрузите исходный файл для версии, которую Вы хотите

  2. Требования сборки установки:

    sudo apt-get install build-essential
    
  3. Установка Zlib для сжатия с этими шагами:

    cd /usr/local/src
    wget http://www.zlib.net/zlib-1.2.8.tar.gz
    tar xvfz zlib-1.2.8.tar.gz
    cd zlib-1.2.8/
    ./configure --prefix=/usr/local
    make
    
  4. Скомпилируйте апача с этими шагами:

    • Переместите загруженный apache исходный файл в /usr/local/src, затем

      cd /usr/local/src
      tar xvfz httpd-2.4.10.tar.gz
      cd httpd-2.4.10/            
      sudo ./configure
      
      • Если Вы добираетесь APR ошибка выполняется:

        sudo apt install libapr1-dev libaprutil1-dev                 
        
    • Если успешное выполнение:

      sudo make
      sudo make install
      
  5. Проверьте, чтобы видеть, работает ли это:

    sudo /usr/local/apache2/bin/apachectl start
    
    • поместить http://localhost или Ваш IP-адрес машины и Вы должны видеть, что в сообщении говорится, что "Он работает!"
  6. Включить boot startup:

    sudo cp /usr/local/apache2/bin/apachectl /etc/init.d/apache2
    sudo chmod +x /etc/init.d/apache2
    
  7. Добавьте к значению по умолчанию runlevels:

    sudo /usr/sbin/update-rc.d -f apache2 defaults
    

Источник:

http://www.linuxpathfinder.com/install-apache-from-source-on-ubuntu

0
ответ дан 2 November 2019 в 03:24

Другие вопросы по тегам:

Похожие вопросы: