2013-08-30 159 views
1

后,我安装了PHP的curl扩展使用以下命令:
安装curl扩展PHP停止工作我工作的Ubuntu 12.04服务器上

apt-get install curl 
apt-get install php5-curl 
service apache2 restart 

这样做的PHP停止工作
后,如果我要求的一些PHP页面,火狐尝试下载文件,而不是一些研究,我发现,在该目录下/etc/apache2/mods-enabled/缺少链接到文件后,运行该脚本

的:

/etc/apache2/mods-available/php5.conf 
/etc/apache2/mods-available/php5.load 

所以我跑的命令a2enmod php5和链接已创建
但是当我的午餐service apache2 restart失败/var/log/apache2/error.log
我发现了一些线,如:

PHP Warning: PHP Stratup: Unable to load dynamic library '/usr/lib/php5/20100525/pdo.so' - /usr/lib/php5/20100525/pdo.so: cannot open shared object file: No such file or directory in Unknown on line 0 

各种estensions。
我已经验证该目录/usr/lib/php5/20100525/不存在了
但我发现,包含.so文件

我也看到,该目录/etc/php5/conf.d是空的,没有任何链接的目录/usr/lib/php5/20121212/,但所有.ini文件在/etc/php5/mods-available

我的问题是: 为什么更新已经创建了所有这些问题?
如何解决呢?解决方案可以将参考从/usr/lib/php5/20100525/更改为/usr/lib/php5/20121212/?我可以在那里做什么?

感谢您的帮助和抱歉,我的英语水平

UPDATE
我创建的链接通过SEB

ln -s /usr/lib/php5/20121212/ /usr/lib/php5/20100525 

的建议,但是当我重新启动Apache失败,出现错误:

apache2: Syntax error on line 210 of /etc/apache/apache2.conf: 
Syntax error on line 1 of /etc/apache2/mods-enabled/php5.load: 
Cannot load /usr/lib/apache2/modules/libphp5.so into server: 
/usr/lib/apache2/modules/libphp5.so: 
cannot open shared object file: No such file or directory 

可以PHP重新安装的解决这个问题? 如果是的我该怎么办? 再次感谢

UPDATE
后,我从snapshotand恢复虚拟机多了一些不成功的尝试我用aptitude解决了这个问题。

aptitude install php5-curl 
The following NEW packages will be installed: 
    libcurl3{a} libjson-c2{a} php5-curl php5-json{a} 
The following packages will be upgraded: 
    php5-common 
1 packages upgraded, 4 newly installed, 0 to remove and 130 not upgraded. 
Need to get 722 kB of archives. After unpacking 820 kB will be used. 
The following packages have unmet dependencies: 
libapache2-mod-php5 : Dipende: php5-common (= 5.4.12-2~precise+1) but 5.5.3+dfsg 1+debphp.org~precise+2 is to be installed. 
php5-gd : Dipende: php5-common (= 5.4.12-2~precise+1) but 5.5.3+dfsg-1+debphp.org~precise+2 is to be installed. 
php5-mcrypt : Dipende: php5-common (= 5.4.12-2~precise+1) but 5.5.3+dfsg-1+debphp.org~precise+2 is to be installed. 
php5-mysql : Dipende: php5-common (= 5.4.12-2~precise+1) but 5.5.3+dfsg-1+debphp.org~precise+2 is to be installed. 
php5-cli : Dipende: php5-common (= 5.4.12-2~precise+1) but 5.5.3+dfsg-1+debphp.org~precise+2 is to be installed. 
The following actions will resolve these dependencies: 

    Remove the following packages:    
1)  libapache2-mod-php5      
2)  php5          
3)  php5-cli         
4)  php5-gd         
5)  php5-mcrypt        
6)  php5-mysql         
7)  phpmyadmin         

    Leave the following dependencies unresolved: 
8)  libapache2-mod-php5 recommends php5-cli 


Accept this solution? [Y/n/q/?] n 

我回答没有
这第一个解决方案 第二个提出的解决方案是

The following actions will resolve these dependencies: 
     Remove the following packages: 
1)  apache2.2-bin 
2)  apache2.2-common 

     Install the following packages: 
3)  apache2-bin [2.4.6-2~precise+1 (precise)] 
4)  apache2-data [2.4.6-2~precise+1 (precise)] 
5)  libgd3 [2.1.0-2~precise+1 (precise)] 
6)  liblua5.1-0 [5.1.4-12ubuntu1 (precise)] 
7)  libtiff4 [3.9.5-2ubuntu1.5 (precise-security, precise-updates)] 
8)  libvpx1 [1.0.0-1 (precise)] 
9)  php5-readline [5.5.3+dfsg-1+debphp.org~precise+2 (precise)] 

     Upgrade the following packages: 
10)  apache2 [2.2.22-1ubuntu1.2 (now) -> 2.4.6-2~precise+1 (precise)] 
11)  apache2-mpm-itk [2.2.22-1ubuntu1.2 (now) -> 2.4.6-2~precise+1 (precise)] 
12)  libapache2-mod-php5 [5.4.12-2~precise+1 (now) -> 5.5.3+dfsg-1+debphp.org~precise+2 (precise)] 
13)  libaprutil1 [1.3.12+dfsg-3 (now, precise) -> 1.5.2-1~precise+1 (precise)] 
14)  libaprutil1-dbd-sqlite3 [1.3.12+dfsg-3 (now, precise) -> 1.5.2-1~precise+1 (precise)] 
15)  libaprutil1-ldap [1.3.12+dfsg-3 (now, precise) -> 1.5.2-1~precise+1 (precise)] 
16)  php5-cli [5.4.12-2~precise+1 (now) -> 5.5.3+dfsg-1+debphp.org~precise+2 (precise)] 
17)  php5-gd [5.4.12-2~precise+1 (now) -> 5.5.3+dfsg-1+debphp.org~precise+2 (precise)] 
18)  php5-mcrypt [5.4.12-2~precise+1 (now) -> 5.5.3+dfsg-1+debphp.org~precise+2 (precise)] 
19)  php5-mysql [5.4.12-2~precise+1 (now) -> 5.5.3+dfsg-1+debphp.org~precise+2 (precise)] 

Accept this solution? [Y/n/q/?] y 

我接受这第二个解决方案,安装成功后,我只需要调整虚拟主机的配置为Apache 2。4

+0

试图安装pdo也做一个更新? – bansi

回答

0

我现在不为什么会发生,但你可以只是链接/ usr/lib目录/ PHP5/20121212 /到/ usr/lib中/ PHP5/20100525/

ln -s /usr/lib/php5/20121212/ /usr/lib/php5/20100525/ 

所以你不需要改变所有的配置文件。

更新:

您可以重新安装PHP与

apt-get purge php5 
apt-get install php5 

我觉得比apt-get更好的包管理​​。

+0

谢谢,但没有解决,如果你能看到我的更新 – corros

+0

我已经标记你的答案为接受,因为使用aptitude的建议让我去解决方案,非常感谢 – corros