3.安装PHP环境(Ubuntu)

安装PHP环境(Ubuntu)

1. 准备

  • Apache服务器
  • 文本编辑器
  • 终端
  • 浏览器

2. 安装PHP

  • 安装相应的库
$ sudo apt-get install php
$ sudo apt-get install libapache2-mod-php
  • 配置php库版本
    apache2服务会使用/usr/lib/apache2/modules/目录下的php库,如果(系统升级后)php库版本1不同,则会出现如下错误。
$ systemctl status apache2
× apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Tue 2022-11-15 11:03:47 CST; 3s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 6709 ExecStart=/usr/sbin/apachectl start (code=exited, status=1/FAILURE)
        CPU: 25ms

11月 15 11:03:47 ubuntu systemd[1]: Starting The Apache HTTP Server...
11月 15 11:03:47 ubuntu apachectl[6712]: apache2: Syntax error on line 146 of /etc/apache2/apache2.conf: Syntax error on line 3 of /etc/apache2/mods-enabled/php7.4.load: Cannot load /usr/lib/apache2/modules/libphp7.4.so into server:: /usr/lib/apache2/modules/libphp7.4.so: cannot open shared object file: No such file or directory
11月 15 11:03:47 ubuntu apachectl[6709]: Action 'start' failed.
11月 15 11:03:47 ubuntu apachectl[6709]: The Apache error log may have more information.
11月 15 11:03:47 ubuntu systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE
11月 15 11:03:47 ubuntu systemd[1]: apache2.service: Failed with result 'exit-code'.
11月 15 11:03:47 ubuntu systemd[1]: Failed to start The Apache HTTP Server.

可通过以下命令更改配置(以7.4更改到8.1为例):
/etc/apache2/mods-enabled/目录下的php7.4.load链接文件删除。

$ sudo a2dismod php7.4
Module php7.4 disabled.
To activate the new configuration, you need to run:
  systemctl restart apache2

/etc/apache2/mods-enabled/目录下创建php8.1.load链接文件。

$ sudo a2enmod php8.1 
Considering dependency mpm_prefork for php8.1:
Considering conflict mpm_event for mpm_prefork:
Considering conflict mpm_worker for mpm_prefork:
Module mpm_prefork already enabled
Considering conflict php5 for php8.1:
Enabling module php8.1.
To activate the new configuration, you need to run:
  systemctl restart apache2

上述链接文件指向/etc/apache2/mods-available/目录中已有的文件,若该文件不存在,则需要创建相应的.conf文件和.load文件,然后再运行上述指令。

$ sudo cp /etc/apache2/mods-available/php7.4.conf /etc/apache2/mods-available/php8.1.conf
$ sudo vi /etc/apache2/mods-available/php8.1.load

将以下内容写入到/etc/apache2/mods-available/php8.1.load文件

# Conflicts: php5
# Depends: mpm_prefork
LoadModule php_module /usr/lib/apache2/modules/libphp8.1.so
  • 重启Apache服务
$ systemctl restart apache2

3. 验证

  • 在Apache服务器的网页访问路径2/var/www/xxx.com下新建一个index.php文件。
$ sudo vi /var/www/xxx.com/index.php
  • 输入以下php语句并保存。
<?php echo phpinfo();?>
  • 打开浏览器,输入以下地址(以局域网地址为例),能正常显示php的信息表格表示成功。
http://192.168.10.1/index.php/

上一步:Apache服务器配置(Ubuntu)


  1. apache2服务使用的库目录在.load文件中,可在对应的目录下查看已有的库版本。 ↩︎

  2. 上一步中配置的路径 ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值