apache-9-lamp&worepress
十一 LAMP部署
介绍
由于apache的优势是处理静态请求,也就是静态页面,遇到动态请求就显得力不从心了,现在的网站上又有很多动态请求,所以为了满足需求我们需要使用到LAMP这个架构,所谓的LAMP=Linux+apache+mysql/mariadb+php是一个多C/S架构的平台,在此架构中web客户端基于TCP/IP通过http协议发起传送,这个请求可能是静态的也可能是动态的。所以web服务器通过发起请求的后缀来判断,如果是静态的就由web服务器自行处理,然后将资源发给客户端。如果是动态的web服务器会通过CGI(Common Gateway Interfence)协议发起给php。如果php以模块形式与web服务器联系,那么它们是通过内部共享内存的方式,如果php单独的一台服务器,那么它们是以sockets套接字的方式进行通信(这又是一个C/S架构),这时php会相应的执行一段程序,如果在程序执行时需要一些数据,那么php就会通过 mysql协议发送给mysql服务器(这也可以看作是一个C/S架构),由mysql服务器处理,将数据供给php程序。
动态页面和静态页面
静态网页:
(1)静态网页不能简单地理解成静止不动的网页,它主要指的是网页中没有程序代码,只有HTML(即:超文本标记语言),一般后缀为.html,.htm,或者.xml等。虽然静态网页的页面一旦做成,内容就不会再改变了。但是,静态网页也包括一些能动的部分,这些主要是一些GIF动画等
(2)静态网页的打开,用户可以直接双击,并且不管任何人任何时间打开的页面的内容都是不变的。
动态网页:
(1)动态网页是指跟静态网页相对的一种网页编程技术。动态网页的网页文件中除了HTML标记以外,还包括一些特定功能的程序代码,这些代码可以使得浏览器和服务器可以交互,所以服务器端根据客户的不同请求动态的生成网页内容。即:动态网页相对于静态网页来说,页面代码虽然没有变,但是显示的内容却是可以随着时间、环境或者数据库操作的结果而发生改变的。
(2)动态网页,与网页上的各种动画、滚动字幕等视觉上的动态效果没有直接关系,动态网页也可以是纯文字内容的,也可以是包含各种动画的内容,这些只是网页具体内容的表现形式,无论网页是否具有动态效果,只要是采用了动态网站技术(如PHP、ASP、JSP等)生成的网页都可以称为动态网页。
动态网页和静态网页的区别:
(1)更新和维护:
静态网页内容一经发布到网站服务器上,无论是否有用户访问,这些网页内容都是保存在网站服务器上的。如果要修改网页的内容,就必须修改其源代码,然后重新上传到服务器上。静态网页没有数据库的支持,当网站信息量很大的时候网页的制作和维护都很困难
动态网页可以根据不同的用户请求,时间或者环境的需求动态的生成不同的网页内容,并且动态网页一般以数据库技术为基础,可以大大降低网站维护的工作量
(2)交互性:
静态网页由于很多内容都是固定的,在功能方面有很大的限制,所以交互性较差
动态网页则可以实现更多的功能,如用户的登录、注册、查询等
(3)响应速度:
静态网页内容相对固定,容易被搜索引擎检索,且不需要连接数据库,因此响应速度较快
动态网页实际上并不是独立存在于服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页,其中涉及到数据的连接访问和查询等一系列过程,所以响应速度相对较慢
(4)访问特点:
静态网页的每个网页都有一个固定的URL,且网页URL以.htm、.html、.shtml等常见形式为后缀,而不含有“?”,可以直接双击打开
动态网页中的“?”对搜索引擎检索存在一定的问题,搜索引擎一般不可能从一个网站的数据库中访问全部网页,或者出于技术方面的考虑,搜索之中不去抓取网址中“?”后面的内容,不能直接双击打开
综上所述
如果网页内容相对的简单,不需要频繁的进行改动,或者只是为了展示信息等,就用静态网页,简单易操作,不需要管理数据库等
如果网页内容相对复杂,功能多,改动频繁,实时性的内容多,就用动态网页
LAMP工作流程
- 用户发送http请求到达http服务器
- httpd解析URL获取需要的资源的路径,通过内核空间来读取硬盘资源,如果是静态资源,则构建响应报文发回给用户。
- 如果是动态资源,将资源地址发送给php解析器,解析php程序文件,解析完毕将内容发回给httpd,httpd构建响应报文,发回给用户。
- 如果涉及到数据库操作,则利用php-mysql驱动,获取数据库数据,返回给PHP解析器。
案例
利用LAMP+wordpress搭建博客网站
WordPress
一款使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统来使用。WordPress以上手简单、功能强大、扩展性与灵活性著称,加上开源免费,主题插件极其丰富,无论作为新手学习搭建个人博客,还是专业用户用于架设复杂的企业电商网站、论坛等,WP 都能完美满足需求。你几乎能用 WP 打造成任何类型的网站,只有想不到,没有做不到。而且全球数以亿计各类知名网站都是基于 WP 构建,根据官方统计,目前全球有 32% 的网站都由 WP 搭建,由于它实在太过流行,因此无论插件、主题、教程、文档等资源都极其丰富,你选都选不完。而且网上关于性能优化、问题解决等讨论也非常的全面。基本上学习建网站这事,您只需玩转 WP 就够了!所以,如果要建站或想尝试学习建站,那 WP 绝对值得你优先考虑。
wordpress官网:https://cn.wordpress.org打开可能会有问题 (429错误),可以去https://ww.wp.xz.cn下载软件包
环境介绍
一台安装CentOS8的主机
关闭SElinux和防火墙
配置好yum源
挂载光盘
可以联网
wordpress软件包下载地址:https://ww.wp.xz.cn/latest.zip
流程
step1 安装相关软件包
[root@manage01 ~]# dnf install httpd* mariadb mariadb-server php* -y
step2 启动相关服务
[root@manage01 ~]# systemctl restart httpd php-fpm mariadb
step3 设置数据库管理员密码
[root@manage01 ~]# mysqladmin -u root password '123456'
step4 生成测试页面
[root@manage01 ~]# cd /var/www/html/
[root@manage01 ~]# rm -fr index.html
[root@manage01 ~]# vim /var/www/html/index.php
<?php
$db = new mysqli('localhost', 'root', '123456', 'mysql');
if (mysqli_connect_errno()){
echo '<p>' . 'Connect DB error';
exit;
} else {
echo '连接数据库成功,数据查询中...';
}
?>
step5 打开浏览器测试
step6 创建相应的数据库
[root@manage01 ~]# mysql -u root -p
Enter password:
MariaDB [(none)]> create database wordpress charset=utf8;
Query OK, 1 row affected (0.001 sec)
MariaDB [(none)]> quit
Bye
step7 准备wordpress
[root@manage01 ~]# tar fx wordpress-5.3.2-zh_CN.tar.gz
[root@manage01 ~]# cd wordpress/
[root@manage01 wordpress]# mv * /var/www/html/
####将wordpress文件移动到apache页面文件存放的目录
[root@manage01 wordpress]# cd /var/www/html/
setp8 浏览器刷新
复制提示页面内容,按照要求手工创建wp-config.php文件并将内容粘贴
[root@manage01 html]# vim /var/www/html/wp-config.php
总结
什么是lamp
动态网页与静态网页
LAMP的工作流程
如何部署设置LAMP平台
如何在LAMP平台上搭建wordpress
重点:LAMP架构由哪些成员构成,动态网页与静态网页,LAMP的工作流程,CentOS8上lamp平台的搭建,wordpress的安装
难点:记住LAMP的组成,理解动态网页和静态网页的区别,记住LAMP的工作流程,记住在lamp平台上需要安装哪些软件包,启动哪些服务,修改了哪些配置文件,wordpress的安装设置
章总结
apache的介绍
apache的安装部署
默认网站介绍和配置文件
请求头和响应头分析
虚拟主机
日志管理
URL重写与防盗链
长连接、压缩、缓存
LAMP部署
重点:apache的安装和部署,默认网站的设置和相关文件,如何查看apache的帮助,主配置文件中各字段的含义,请求头和响应头当中包含的内容,虚拟主机功能的使用,日志的管理和调整,URL重写、防盗链、长连接、压缩、缓存功能的使用、LAMP环境的部署
难点:相关文件的存放位置和作用,主配置文件包含的内容与作用,不同类型的虚拟主机的使用环境,灵活使用并调整日志,重写、防盗链、长连接、压缩、缓存功能的实现,lamp环境的搭建,如何利用lamp搭建动态网站
今天的文章有点长,哈哈哈,没关系,还有更长的!!!^_^
请先 后发表评论~