2013-09-02 12 views
9

Próbuję zainstalować PHP na instancji EC2 amazon ale kiedy uruchomić następujące polecenie: sudo yum -y install httpd php54-fpm php54-commoninstalacji php i apache na instancji EC2 Amazon

daje mi następujące błędy:

 Loaded plugins: priorities, security, update-motd, upgrade-helper 
    Setting up Install Process 
    Resolving Dependencies 
    --> Running transaction check 
    ---> Package httpd.x86_64 0:2.2.25-1.0.amzn1 will be installed 
    --> Processing Dependency: httpd-tools = 2.2.25-1.0.amzn1 for package: httpd-2.2.25-  1.0.amzn1.x86_64 
    --> Processing Dependency: apr-util-ldap for package: httpd-2.2.25-1.0.amzn1.x86_64 
    ---> Package php54-common.x86_64 0:5.4.17-2.41.amzn1 will be installed 
    ---> Package php54-fpm.x86_64 0:5.4.17-2.41.amzn1 will be installed 
    --> Running transaction check 
    enter code here ---> Package apr-util-ldap.x86_64 0:1.4.1-4.14.amzn1 will be installed 
    ---> Package httpd-tools.x86_64 0:2.2.25-1.0.amzn1 will be installed 
--> Processing Conflict: httpd24-tools-2.4.6-2.47.amzn1.x86_64 conflicts httpd-tools < 2.4.6 
--> Processing Conflict: php54-common-5.4.17-2.41.amzn1.x86_64 conflicts php-common < 5.4.17-2.41.amzn1 
--> Finished Dependency Resolution 
Error: httpd24-tools conflicts with httpd-tools-2.2.25-1.0.amzn1.x86_64 
Error: php54-common conflicts with php-common-5.3.27-1.0.amzn1.x86_64 
You could try using --skip-broken to work around the problem 
You could try running: rpm -Va --nofiles --nodigest 

Z góry dziękuję.

+0

W odniesieniu do konfliktu Apache .. Próbujesz zainstalować pakiet 'httpd' zawierający Apache v2.2, ale masz już zainstalowany' httpd24', zawierający Apache v2.4. –

Odpowiedz

12

Czy przeczytałeś komunikat o błędzie? Przeczytaj jeszcze raz:

Error: httpd24-tools conflicts with httpd-tools-2.2.25-1.0.amzn1.x86_64 
Error: php54-common conflicts with php-common-5.3.27-1.0.amzn1.x86_64 

Próbujesz zainstalować HTTPD 2.4, kiedy wydaje się mieć HTTPD 2.2 zainstalowany i samo z php, czyli masz zainstalowane PHP 5.3 i próbujesz zainstalować 5.4. Prostym sposobem potwierdzenia tego jest wpisanie następującego bash:

php -v 
httpd -V 

Jeśli chcesz zainstalować nowsze wersje, usuń starsze wersje.

yum remove httpd-tools-2.2.25-1.0.amzn1.x86_64 php-common-5.3.27-1.0.amzn1.x86_64 
+0

dziękuję to działało ..... – modon

5

Dokładniej, httpd == wersja 2.2. php54 próbuje zainstalować httpd24. Nie należy podawać httpd. Niech twoja wersja PHP określi wersję Apache do zainstalowania.

+1

Świetna wskazówka, nie określając httpd – DOOManiac

+0

To świetnie, chyba że Twoja aplikacja została przetestowana tylko w stosunku do innej wersji. Dlaczego php określa wersję apache? – flickerfly

+0

To świetne pytanie. Poważnie. Prawdziwie. Kolejnym świetnym pytaniem jest, dlaczego wciąż używasz Apache zamiast Nginx? Jeszcze inne pytanie brzmi: dlaczego nie używasz Dockera z Alpine Linux? –