Fehler beim Installieren von Apache auf 12.04 LTS

Fehler beim Installieren von Apache auf 12.04 LTS

Auf Ubuntu 12.04 LTS Server brauche ichApache 2.4.5 oder höherIch mache das:

add-apt-repository ppa:ondrej/php5
apt-get update
apt-get install apache2

Aber wenn ich den letzten Befehl ausführe, erhalte ich:

Setting up apache2 (2.4.20-1+deb.sury.org~precise+1) ...
Feature bundle "5.16" is not supported by Perl 5.14.2 at /usr/sbin/a2enmod line 14
BEGIN failed--compilation aborted at /usr/sbin/a2enmod line 14.
dpkg: error processing apache2 (--configure):
 subprocess installed post-installation script returned error exit status 255
Errors were encountered while processing:
 apache2
E: Sub-process /usr/bin/dpkg returned an error code (1)

Anscheinend brauche ich eine neuere Version von Perl. Wie bekomme ich die? Ich kann kein PPA dafür finden.

Antwort1

Da auch ich dieses Problem auf einigen von mir betreuten Ubuntu 12.04-Servern hatte, beschloss ich, einen Klon von Ondrejs PPA mit den letzten bekannten funktionierenden Ubuntu 12.04-Paketen zu erstellen.

https://launchpad.net/~nickmoline/+archive/ubuntu/php55

Durch die Umstellung auf dieses PPA konnte ich Apache und PHP erneut erfolgreich installieren.

Dadurch wird Apache auf 2.4.16 anstatt auf das nicht funktionierende 2.4.20 beschränkt.

Zuvor habe ich Ondrej kontaktiert, der mir mitteilte, dass sie das Problem irgendwann beheben werden, aber keinen Zeitrahmen dafür nennen. Wenn das der Fall ist, werde ich mein PPA aktualisieren und einen Hinweis hinzufügen, dass Sie es nicht mehr verwenden können.

Wenn es Ihnen hilft, können Sie es gerne verwenden.

Antwort2

Sie können die Details eines PPA jederzeit anzeigen, indem Sie dessen Seite im Launchpad besuchen.

Das von Ihnen verwendete PPA finden Sie unterhttps://launchpad.net/~ondrej/+archive/ubuntu/php5, und laut seinem Betreuer unterstützt das von Ihnen hinzugefügte PPA Ubuntu 12.04 nicht.

This PPA contains latest PHP 5.5 packaged for Ubuntu 14.04 LTS (Trusty).

[...]

If you need other PHP versions use:
  PHP 5.4: ppa:ondrej/php5-oldstable (Ubuntu 12.04 LTS)
  PHP 5.5: ppa:ondrej/php5 (Ubuntu 14.04 LTS)
  PHP 5.6: ppa:ondrej/php5-5.6 (Ubuntu 14.04 LTS - Ubuntu 16.04 LTS)
  PHP 5.6 and PHP 7.0: ppa:ondrej/php (Ubuntu 14.04 LTS - Ubuntu 16.04 LTS)

Das PPA vom selben Betreuer, das auch für 12.04 verwendet wird (ppa:ondrej/php5-oldstable), enthält nicht Apache 2.4 und wird nicht mehr unterstützt.

Update (von ondrej): Ich habe mich endlich an den Perl-Code a2enmod gewagt und der Fix für Ubuntu 12.04 war am Ende nicht so schwer, also sollte 2.4.20-1+deb.sury.org~precise+2 den korrigierten Code enthalten.

Update 2 (von ondrej): Ich habe alle Apache2-bezogenen Pakete verschoben, um ppa:ondrej/apache2Duplikate zu vermeiden. Leider gibt es keine Möglichkeit, dies in den PPA-Abhängigkeiten auszudrücken.

Antwort3

Sie können die alten Pakete im Build-Verlauf finden und herunterladen:

wget -A deb -m --no-parent https://launchpad.net/~ondrej/+archive/ubuntu/php5/+build/7886307
wget https://launchpad.net/~ondrej/+archive/ubuntu/php5/+build/7886308/+files/apache2-data_2.4.16-4+deb.sury.org~precise+4_all.deb

Dieser Paketsatz stammt aus einer früheren Version, die nicht von Perl 5.16 abhängig sein sollte.

verwandte Informationen