如何安装 PHP 5 的 ClamAV 扩展?

如何安装 PHP 5 的 ClamAV 扩展?

我想使用 php 自动扫描上传的文件是否有病毒。在早期版本的 ubuntu 中有一个名为 php-clamavlib 的扩展,但在 Natty 上我得到了

E: 无法找到软件包 php5-clamavlib

不再有任何扩展吗?我该怎么做才能存档?

答案1

在 izx 的回答、32bitfloat 的评论和一些谷歌搜索之后,我成功了(在 Ubuntu 12.04 LTS 上)。这正是我必须做的。所有这些命令都是以 root 身份执行的,并且您的设置中的某些细节可能有所不同。

准备

首先,清除所有现有 ClamAV 的痕迹:

aptitude install zlib1g-dev php5-dev
aptitude purge clamav clamav-base clamav-data clamav-docs clamav-freshclam libclamav6

安装 ClamAV

下载最新的 ClamAV,制作并安装它:

wget http://downloads.sourceforge.net/clamav/clamav-0.98.4.tar.gz
tar xzf clamav-0.98.4.tar.gz
cd clamav-0.98.4
./configure
make
make install
ldconfig

使 freshclam 工作并运行它:

useradd clamav
mkdir /usr/local/share/clamav
chown clamav /usr/local/share/clamav
cp /usr/local/etc/freshclam.conf.sample /usr/local/etc/freshclam.conf

编辑文件/usr/local/etc/freshclam.conf并注释掉以下行Example。然后更新:

freshclam

如果运行成功,请通过扫描文件测试其是否正常工作:

clamscan somefile

安装 PHP-ClamAV

下载最新的 PHP-ClamAV,制作并安装它:

wget https://launchpad.net/php-clamav/trunk/0.15.7/+download/php-clamav_0.15.7.tar.gz
tar xzf php-clamav_0.15.7.tar.gz
cd php-clamav_0.15.7
phpize
./configure --with-clamav
make
make install

安装到 Apache 并重新启动:

echo "extension=clamav.so" > /etc/php5/conf.d/clamav.ini
service apache2 restart

我希望这些对某些人有用。我真的希望php-clamav它仍然支持 Aptitude。它会比上面的好得多。

答案2

  • 请从以下位置下载最新的php-clamavtarball发射台
  • 安装php5-devclamav如果尚未安装)sudo apt-get
  • 将 tarball 解压cdphp-clamav-xxxx目录,然后按照以下步骤安装php-clamav模块(改编自INSTALL):

    phpize
    ./configure--with-clamav 复制代码
    制作  
    cp 模块/clamav.so /usr/local/lib/php/extensions/
    (重启 Apache)
    服务 httpd 重启
    

相关内容