Ubuntu部署PHP

1 部署apache2

  • cmd
sudo apt-get install apache2
  • validate
localhost

2 apache2 Usage

2.1 启动

apache2默认监听80端口,启动后输入:localhost即可获取Home信息,如下图。

sudo service apache2 start

在这里插入图片描述

图1 启动成功
  • 启动
sudo service apache2 start
  • 重启
sudo service apache2 restart

2.2 配置监听端口

  • apache2路径
/etc/apache2
  • 修改端口配置文件ports.conf
sudo vim /etc/apache2
Listen 8899
  • 重启apache2
sudo service apache2 restart
  • Home
localhosnt:8899

3 部署php

3.1 安装php

sudo apt-get install php7.0
  • php安装路径
/etc/php/7.2
  • 查看php版本
php -v

在这里插入图片描述

图3.1 php版本

3.2 安装插件

  • 查看安装的插件
php -m
  • 搜索插件
apt-cache search libapache2-mod-php

在这里插入图片描述

图3.2 php插件
  • 安装插件
sudo apt-get install libapache2-mod-php7.2
  • 测试
# 进入apache的html目录
cd /var/www/html
vim test.php
<?php
    phpinfo();
?>
  • 访问
localhost/test.php

在这里插入图片描述

图3.3 运行结果

4 Usage

4.1 命令行执行php

php -a
>echo "hello world";
hello world

4.2 执行*.php文件

  • 【test.php】
<?php
    echo "helloworld";
?>php
  • 执行
php test.php

4.3 Web端直接访问

在apache2目录下新建php文件name.php,直接访问:localhost/name.php

/etc/www/html
sudo vim /etc/www/html name.php

5 PHP安装MySQL驱动

PHP7.2默认已经启动PDO(PHP Data Object),如下:
在这里插入图片描述

图5.1 PDO启动状态

5.1 搜索mysql插件

apt-cache search php7.2-

5.2 安装mysql插件

sudo apt-get install php7.2-mysql

5.3 配置php.ini

sudo vim /etc/php/7.2/phpdbg/php.ini

找到如下:
;extension=pdo_mysql
将分号去掉,使该pdo_mysql生效.

5.4 重启apache2服务

sudo service apache2 restart

mysql驱动已配置成功.
在这里插入图片描述

图5.2 mysql驱动配置状态

6 安装phpMyadmin

功能:php mysql管理UI.

6.1 安装

sudo apt-get install -y phpmyadmin

6.2 配置

选择apache2,使用空格选中,出现星号:*,说明成功选中,确定并安装.
在这里插入图片描述

图6.1 未选中状态

在这里插入图片描述

图6.2 选中状态

在这里插入图片描述

图6.3 设置秘密

在这里插入图片描述

图6.4 登录界面

在这里插入图片描述

图6.5 管理界面首页

6.3 用户

  • 用户名
phpmyadmin
  • 密码
123456

7 Q&A

7.1 安装后自动启动失败

● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: failed (Result: exit-code) since Sat 2019-08-03 21:01:04 CST; 5ms ago
  Process: 9247 ExecStart=/usr/sbin/apachectl start (code=exited, status=1/FAILURE)

7.2 启动失败

[....] Starting apache2 (via systemctl): apache2.serviceJob for apache2.service failed because the control process exited with error code.
See "systemctl status apache2.service" and "journalctl -xe" for details.
 failed!

7.3 重启失败

[....] Restarting apache2 (via systemctl): apache2.serviceJob for apache2.service failed because the control process exited with error code.
See "systemctl status apache2.service" and "journalctl -xe" for details.
 failed!
  • Reason
    80端口被占用
  • Plan
    端口查看
sudo netstat -pant

在这里插入图片描述

图7.1 端口状态
  • 端口进程
ps -ef | grep nginx

在这里插入图片描述

图7.2 nginx进程号
  • 关闭进程
sudo kill 10104

7.4 运行curl_init()调用失败

PHP Fatal error:  Uncaught Error: Call to undefined function curl_init() 
  • Reason
    php-curl未安装.
  • Plan
sudo apt-get install -y php-curl

【参考文献】
[1]https://www.cnblogs.com/fireicesion/p/8457898.html
[2]https://stackoverflow.com/questions/32926207/error-apache2-service-and-journalctl-xe
[3]https://www.jianshu.com/p/a1e1b041f815
[4]https://www.csdn.net/gather_2f/MtTaEg3sMzkzMy1ibG9n.html
[5]https://blog.csdn.net/qq_33188837/article/details/88904335

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天然玩家

坚持才能做到极致

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值