freebsd安装apache24+php7.4

安装 apache24

cd /usr/ports/www/apache24 && make install
笔者在安装的过程中遇到了perl版本不符合要求的情况。比如系统已安装版本perl5.24.1,但apchec24尝试安装perl5.30.x,此时应进入/usr/ports/lang/perl5.24.1进行make deinstall。然后回到apache24中继续安装。
安装完成后,编辑/etc/rc.conf加入apache24_enable="yes",保存退出。

安装php74

cd /usr/ports/lang/php64 && make install

安装MOD

安装MOD以使得PHP7及apache74同时配合工作。
cd /usr/ports/www/mod_php74 && make install

完成安装后,手动配置/usr/local/etc/apach24/httpd.conf下的以下信息:


    DirectoryIndex index.html index.php

...
                 
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

上述配置的作用是:

  1. 当文件目录下存在index.php时,自动执行。
  2. 将扩展名为.php .phps的文件看做应用进行解析。

安装扩展

安装扩展以使其支持mysql等扩展信息。
cd /usr/ports/lang/php74-extensions && make install
选择需要的扩展信息并进行安装.

启动apache并测试

service apache24 start
echo '> /usr/local/www/apache24/data/index.php

访问:http://服务器IP地址/index.php查看效果,如果显示了php的信息,说明配置正确;如果显示的为文件信息,则配置错误。

其它

freebsd的pkg升级后安装其它软件时会出现:libssl.so.8 not found等错误(也可能是其它的SO找不到,比如:libcrypto.so)。这是由于新的pkg已经将libssl.so.8替换为libssl.so.11了。解决该问题的方案是:

  1. 查看/usr/local/lib/是否有更新版本的so文件。比如:提示找不到libssl.so.8,则查看是否存在 libssl.so.9或libssl.so.10等高版本的文件。
  2. 如果没有找到,则google下这个so文件可以通过安装什么软件获取,比如libssl.so要通过安装security/openssl获得。安装后得到的版本是libssl.so.11
  3. 做一个快捷方式,将libssl.so.8指向libssl.so.11。注意:新文件位于:/usr/local/lib/,而缺失的位置位于/usr/lib/
pkg-static install security/openssl
pkg-static install -f pkg
ln -s /usr/local/lib/libssl.so.11 /usr/lib/libssl.so.8
ln -s /usr/local/lib/libcrypto.so.11 /usr/lib/libcrypto.so.8

你可能感兴趣的:(freebsd,apache,php)