che 60282 0.0 0.5 183184 10176 ? S 19:02 0:00 php-fpm: pool www
root 61303 0.0 0.0 12112 1044 pts/0 S+ 19:46 0:00 grep --color=auto php
[root@CentOS8 ~]# systemctl restart php-fpm.service
LAMP的实现方式:
httpd 接收用户的web请求;静态资源则直接响应;动态资源为php脚本,对此类资源的请求将交由php
来运行
apache和php结合的方式:
LAMP架构实现:
动态资源的请求方式:
实现LAMP:
前提:
??需要安装MySQL、apache、php这三个软件包
PHP连接MySQL的方式:
1. 使用mysqli扩展连接数据库:
??使用mysqli扩展模块mysqli.so连接数据,此方式只能连接MySQL数据库,不支持其它数据库
<?php
$mysqli=new mysqli("mysqlserver", "username", "password");
if(mysqli_connect_errno()){
echo "Failure";
$mysqli=null;
exit; }
echo "OK";
$mysqli->close();
?>
默认安装php的时候是没有安装连接mysql的工具包的
#CentOS 8 需要安装php-mysqlnd这个软件包才会生成对应的模块
[root@CentOS8 ~]# rpm -ql php-mysqlnd
/etc/php.d/20-mysqlnd.ini
/etc/php.d/30-mysqli.ini
/etc/php.d/30-pdo_mysql.ini
/usr/lib/.build-id
/usr/lib/.build-id/27
/usr/lib/.build-id/27/050298f7ae4de2117b0325d5e1f354539efa77
/usr/lib/.build-id/43
/usr/lib/.build-id/43/0aa1d5fd22f68c8c868a0ffb6473f529360ca8
/usr/lib/.build-id/c9
/usr/lib/.build-id/c9/713dbdb20adf4b190b48176317b0c06d691f4e
/usr/lib64/php/modules/mysqli.so
/usr/lib64/php/modules/mysqlnd.so
/usr/lib64/php/modules/pdo_mysql.so
#不加斜线认为是软连接,加了斜线认为是文件夹
[root@CentOS8 ~]# find /lib64/ -name mysqli.so
/lib64/php/modules/mysqli.so
2. 使用PDO(PHP Data Object)扩展连接数据库:
??使用PDO扩展模块pdo_mysql.so连接数据库,此方式可以支持连接MySQL,Oracle等多种数据库
范例:php使用pdo扩展连接数据库的测试代码1
<?php
$dsn='mysql:host=mysqlhost;port=3306;dbname=mysql';
$username='root';
$passwd='magedu';
$dbh=new PDO($dsn,$username,$passwd);
var_dump($dbh);
?>
例如:
[root@CentOS8 html]# cat lamp.php
<?php
$servername = "localhost";
$username = "root";
$password = "";
try {
$conn = new PDO("mysql:host=$servername;dbname=mysql", $username, $password);
// 将PDO错误模式设置为异常
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "连接成功";
}
catch(PDOException $e){
echo "连接失败:".$e->getMessage();
}
?>
常见LAMP应用实现
1. phpmyadmin:实现mysql的web管理
PhpMyAdmin是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库,官网:https://www.phpmyadmin.net/
实现 phpMyadmin应用部署
1.下载软件包
官网:https://www.phpmyadmin.net/
注意:
#不下载这两个对应的包 pma不会给浏览器返回任何信息
[root@CentOS8 html]# yum install php-xml php-json
2.解压到apache的根目录下
3.测试:
http://10.0.0.14/pma/
WordPress:
WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上
架设属于自己的网站。也可把 WordPress当作一个内容管理系统(CMS)来使用,
官网:https://cn.wordpress.org/
部署worlpress:
上传的文件存放位置:/var/www/html/blog/wp-content/
Discuz:
Crossday Discuz! Board(简称 Discuz!)是一套通用的社区论坛软件系统。自2001年6月面世以来,是覆盖率最大的论坛软件系统之一。2010年8月23日与腾讯达成收购协议,官网:https://www.discuz.net/
部署Discuz
-
1.去官网下载对应的安装包
-
2.解压安装包(只需要里面的uploade目录)
-
3.移动到apache服务的根目录