浏览器仅能够解码HTML格式的文档,对于非HTML格式的文档,浏览器调用插件或者通过CGI接口调用其他程序来解码.

动态网站: 我们在服务器端或客户端执行了一段脚本或者一段程序,这段程序执行的结果根据不同的用户、客户端、执行场景而不同!

动态网站一定是能够根据用户请求作出对应响应,甚至于对不同的用户它返回的内容是不一样的,根据客户端不同的请求,返回的

结果是不一样的。

动态网站又分为客户端动态和服务器端动态

客户端动态 :我们服务器端的源程序要下载到本地,并且在本地执行,并把执行结果通过浏览器显示出来。

服务器端动态 :在服务器内部执行源程序,并把执行结果通过浏览器返回给客户端。

php-mysql.i686   -->这个包是PHP访问MySQL的驱动

在php3.0时,引入了zend引擎,将我们的执行过程分成了两段

第一段:词法分析、语法分析、转换为opcode

第二段:执行opcode(放置在内存中)

为了避免他自身去清除opcode,并且实现在多个不同的进程之间共享操作码,共享opcode功能,引入了缓存加速器!

缓存加速器:

APC

eAccelerator

XCache

php解释器与mysql交互

真正与mysql交互的是使用php解释器开发出来的程序(php程序)

<html>     -->html标签

<head>      -->首部

<title>   </title>  -->标题(放在网页上的标题)

</head>

<bady>   -->主体(主体包含网页内容)

</bady>

</html>

/etc/httpd/conf/httpd.conf

1、找到这个模块,确认Apache支持CGI

2、找到这个选项 ScriptAlias  /cgi-bin/  "/var/www/cgi-bin/"  用于定于在哪个目录当中可以执行CGI脚本

访问路径       目录

3、然后在/var/www/cgi-bin/这个目录下创建一个脚本

Apache支持DSO机制

DSO:动态共享对象

php解释器与httpd交互的方式()

FastCGI :安装一个PHP的服务器,自身可以事先生成空闲进程 ,这些空闲进程由PHP服务器自身管理,前端Apache需要使用到PHP功能时

直接向PHP服务器发起请求就可以了,PHP服务器分配一个空闲进程给Apache,当Apache请求结束了,进程还或被收回来,需要销

毁时服务器会自己销毁。基于类似一种服务器客户端一样的机制,Apache为客户端,PHP服务器为服务器。

默认监听在9000端口上

在红帽5.4以后就自带这个功能,名称为fpm(快速PHP模块),

Apache与PHP结合的三种方式:

CGI

module (简单)

fastCGI (配置麻烦)

如何配置Apache服务器使用PHP功能?

1、PHP安装包

php-5.3.3-22.el6.i686.rpm   -->不支持fpm,需要使用这个功能需要打补丁

2、php配置文件(Apache基于线程或进程工作时,他们所依赖的PHP模块也是不一样的 )

<IfModule prefork.c>    -->基于进程工作

LoadModule php5_module modules/libphp5.so   -->在进程模式下PHP,PHP以传统意义上的方式工作

</IfModule>

<IfModule worker.c>   -->基于线程工作

LoadModule php5_module modules/libphp5-zts.so -->在线程模式下,PHP必须以zts的方式工作

</IfModule>

不管是哪一种,他会判断你使用哪个模式,并相应加载合适的模块

AddHandler  php5-script .php -->处理器,以.php结尾的文件,就是用这个工具来处理

AddType  text/html .php   -->添加了一种类别text/html

DirectoryIndex  index.php    -->默认主页面

PHP程序的主配置文件(/etc/php.ini)

[名字]      -->一个[名字]只对这一堆指令生效(分段式配置)

一大堆指令

[名字]

一大堆指令

详解php概念以及主配置文件的更多相关文章

  1. CentOS6.7安装部署php5(详解安装选项与主配置文件)

    模块安装---PHP 编译环境:gcc  gcc-c++   pcre-devel  openssl-devel   libxml2   libxml2-devel   bzip   bzip-dev ...

  2. 基于CentOS6.5下snort+barnyard2+base的入侵检测系统的搭建(图文详解)(博主推荐)

    为什么,要写这篇论文? 是因为,目前科研的我,正值研三,致力于网络安全.大数据.机器学习研究领域! 论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境.也不局限于真实物理机器环境实验室的大数 ...

  3. 基于Windows7下snort+apache+php 7 + acid(或者base) + adodb + jpgraph的入侵检测系统的搭建(图文详解)(博主推荐)

    为什么,要写这篇论文? 是因为,目前科研的我,正值研三,致力于网络安全.大数据.机器学习.人工智能.区域链研究领域! 论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境.也不局限于真实物理机 ...

  4. Ubuntu14.04下Mongodb官网卸载部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 前期博客 Ubuntu14.04下Mongodb官网安装部署步骤(图文详解)(博主推荐) https://docs.mongodb.com/manual/tutorial/ins ...

  5. Ubuntu16.04下Mongodb官网卸载部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 前期博客 Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐) https://docs.mongodb.com/manual/tutorial/ins ...

  6. Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)

    不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...

  7. Ubuntu14.04下Cloudera安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)(在线或离线)

    第一步: Cloudera Manager安装之Cloudera Manager安装前准备(Ubuntu14.04)(一) 第二步: Cloudera Manager安装之时间服务器和时间客户端(Ub ...

  8. Ubuntu14.04下Mongodb数据库可视化工具安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 前期博客 Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐) Ubuntu14.04下Mongodb官网安装部署步骤(图 ...

  9. Ubuntu14.04下Mongodb官网安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 在这篇博客里,我采用了非官网的安装步骤,来进行安装.走了弯路,同时,也是不建议.因为在大数据领域和实际生产里,还是要走正规的为好. Ubuntu14.04下Mongodb(离线安 ...

随机推荐

  1. docker 挂载主机目录 -v 和 --mount区别

    使用-v  时,如果宿主机上没有这个文件,也会自动创建, 但是如果使用--mount时,宿主机中没有这个文件会报错找不到这个文件,并创建失败

  2. 【Kubernetes学习之一】Kubernetes 简介

    环境 centos 7 一.概念和组件Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署.大规模可伸缩.应用容器化管理,简称k8s. 1.Master Kubernetes中的 ...

  3. 029 ElasticSearch----全文检索技术04---基础知识详解02-查询

    1.查询 (1)基本查询 基本语法: GET /索引库名/_search { "query":{ "查询类型":{ "查询条件":" ...

  4. HanLP分词研究

    这篇文章主要是记录HanLP标准分词算法整个实现流程. HanLP的核心词典训练自人民日报2014语料,语料不是完美的,总会存在一些错误.这些错误可能会导致分词出现奇怪的结果,这时请打开调试模式排查问 ...

  5. Rsync学习之旅上

    rsync 简介 什么是rsync rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具. 全量:将全部数据,进行传输覆盖 增量:只传输差异部分的数据 实现增量 ...

  6. 带着canvas去流浪系列之八 碰撞【华为云技术分享】

    [摘要] canvas动画-碰撞仿真 示例代码托管在:http://www.github.com/dashnowords/blogs 经过前面章节相对枯燥的练习,相信你已经能够上手canvas的原生A ...

  7. SQL系列(一)—— SQL简介

    在说到SQL之前需要了解一些关于数据库的概念: 数据库(database):是一个以某种有组织的方式存储的数据集合.存储数据的仓库,不过是以一定的组织方式进行存储. DBMS:数据库管理系统.经常遇到 ...

  8. Vue3.0结合bootstrap做多页面应用(1)创建项目

    本人主要做c# winform应用,刚接触vue,发现用vue做单页面应用的比较多,多页面的资料很少,特别是用vue3.0版本做多页面的资料,更少,所以自己整理一下,结合bootstrap和jquer ...

  9. react,react-router,redux+react-redux 构建一个React Demo

    创建初始化应用 加速我们的npm. npm install -g cnpm --registry=https://registry.npm.taobao.org 利用create-react-app ...

  10. python爬虫User Agent用户代理

    UserAgent简介 UserAgent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,UserAgent也简称UA.它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及 ...