Como faço para atualizar o apache2 ou pelo menos obter recursos de regex do 2.4.8?

1

Estou executando o Ubuntu 14.04.5 e o Apache 2.4.7. Eu quero obter suporte para grupos nomeados e backreferences dentro da diretiva LocationMatch que faz parte do (não liberado) 2.4.8 . Parece que eu deveria ser capaz de instalar o 2.4.10, mas ainda não descobri como. Eu encontrei perguntas semelhantes aqui, mas eu Eu não estou familiarizado o suficiente com o controle de versão e APT para descobrir como fazê-lo para fazer o que eu quero. Como posso atualizar o Apache para obter esses recursos? É algo a ver com os números de prioridade? Existe uma razão convincente para não fazê-lo?

ubuntu@server:/$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.5 LTS
Release:    14.04
Codename:   trusty
ubuntu@server:/$ apt-cache policy apache2
apache2:
  Installed: 2.4.7-1ubuntu4.20
  Candidate: 2.4.7-1ubuntu4.20
  Version table:
     2.4.10-1ubuntu1.1~ubuntu14.04.2 0
        100 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty-backports/main amd64 Packages
 *** 2.4.7-1ubuntu4.20 0
        500 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
        100 /var/lib/dpkg/status
     2.4.7-1ubuntu4 0
        500 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
ubuntu@server:/$ apt-cache madison apache2
   apache2 | 2.4.10-1ubuntu1.1~ubuntu14.04.2 | http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty-backports/main amd64 Packages
   apache2 | 2.4.7-1ubuntu4.20 | http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
   apache2 | 2.4.7-1ubuntu4.20 | http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
   apache2 | 2.4.7-1ubuntu4 | http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
   apache2 | 2.4.7-1ubuntu4 | http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main Sources
   apache2 | 2.4.7-1ubuntu4.20 | http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty-updates/main Sources
   apache2 | 2.4.10-1ubuntu1.1~ubuntu14.04.2 | http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ trusty-backports/main Sources
   apache2 | 2.4.7-1ubuntu4.20 | http://security.ubuntu.com/ubuntu/ trusty-security/main Sources
ubuntu@server:/$ sudo apt-get install apache2=2.4.10-1ubuntu1.1~ubuntu14.04.2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  apache2
Suggested packages:
  apache2-doc
0 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
ubuntu@server:/$ sudo apt-get -s upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
  linux-headers-generic linux-headers-virtual linux-image-virtual
  linux-virtual
The following packages will be upgraded:
  libapache2-mod-php5 php5-cli php5-common php5-gd php5-ldap php5-mysqlnd
  php5-readline
7 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.
Inst php5-readline [5.5.9+dfsg-1ubuntu4.24] (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64]) []
Inst php5-cli [5.5.9+dfsg-1ubuntu4.24] (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64]) []
Inst php5-ldap [5.5.9+dfsg-1ubuntu4.24] (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64]) []
Inst libapache2-mod-php5 [5.5.9+dfsg-1ubuntu4.24] (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64]) []
Inst php5-mysqlnd [5.5.9+dfsg-1ubuntu4.24] (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64]) []
Inst php5-gd [5.5.9+dfsg-1ubuntu4.24] (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64]) []
Inst php5-common [5.5.9+dfsg-1ubuntu4.24] (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
Conf php5-common (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
Conf php5-cli (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
Conf php5-readline (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
Conf php5-ldap (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
Conf libapache2-mod-php5 (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
Conf php5-mysqlnd (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
Conf php5-gd (5.5.9+dfsg-1ubuntu4.25 Ubuntu:14.04/trusty-updates [amd64])
    
por Don 01001100 14.05.2018 / 21:14

2 respostas

2

Como você pode ver na saída do madison, 2.4.10 está disponível no repositório Backports.

Você precisará especificar para instalar a partir do repositório Backports com apt-get install apache2/trusty-backports entre outros. A parte complicada aqui é que o repositório Backports é um pouco sem suporte em termos de correções de bugs e atualizações de segurança em comparação com os repositórios principais.

Minha primeira sugestão seria atualizar para uma versão mais recente do sistema operacional, por causa da idade de Trusty.

Minha segunda sugestão é instalar a partir de backports com o comando acima mencionado. No entanto, você pode apresentar erros de incompatibilidade de versão se os pacotes exigirem a versão mais antiga do Apache e não forem recriados para o Apache "mais recente".

    
por Thomas Ward 14.05.2018 / 21:17
2

Uma solução que funciona para mim é adicionar o ppa ondrej / apache2 . Tem a versão 2.4.33-1 para 14.04.

Existe sempre algum risco envolvido em obter software de um ppa, mas este parece ser bem respeitado e eu o usei por vários anos sem incidentes.

Observação: quando eu adicionei esse ppa pela primeira vez, o IIRC me preparou para uma atualização MAJOR para a versão apache2 que eu estava usando na época, e demorou um pouco para fazer meus sites funcionarem novamente.

    
por Organic Marble 14.05.2018 / 21:30