浏览器仅能够解码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. sass-loader使用data引入公用文件或全局变量报错

    报错信息: ValidationError: Invalid options object. Sass Loader has been initialised using an options obj ...

  2. Unix/Linux系统下的nobody用户是什么?

    1.Windows系统在安装后会自动建立一些用户帐户,在Linux系统中同样有一些用户帐户是在系统安装后就有的,就像Windows系统中的内置帐户一样. 2.它们是用来完成特定任务的,比如nobody ...

  3. js设置元素指定时间隐藏

    $().fadeOut(); js指定时间隐藏

  4. 《Linux就该这么学》培训笔记_ch09_使用ssh服务管理远程主机

    <Linux就该这么学>培训笔记_ch09_使用ssh服务管理远程主机 文章最后会post上书本的笔记照片. 文章主要内容: 配置网络服务 远程控制服务 不间断会话服务 书本笔记 配置网络 ...

  5. AKKA HTTP 简单示例

    AKKA HTTP 简单示例 依赖包: compile("com.typesafe.akka:akka-http_2.13:10.1.8") compile("com.t ...

  6. 【转帖】 PM RD QA OP

    From 百度知道 一.PM: Product Manager,产品经理,又称品牌经理(Brand Manager).举凡产品从创意到上市,所有相关的研发.调研.生产.编预算.广告.促销活动等等,都由 ...

  7. 使用Clion优雅的完全远程自动同步和远程调试c++

    摘要:在linux上用vim写C++的时候,通常用gdb进行调试,不能随心所欲的看代码和跳转代码以及加watch(也有可能是因为我还没有get正确的使用方法).为此我发现Clion可以做到自动同步本场 ...

  8. Fiddler手机抓包不完全记录

    准备工作: 1.必须确保安装fiddler的电脑和手机在同一个wifi环境下 备注:如果电脑是笔记本当然最好;如果电脑用的是台式机,可以安装一个随身wifi,来确保台式机和手机在同一wifi环境下   ...

  9. 【模板】LCT

    核心思想: 动态维护一个森林.支持删边,加边,查询链信息等很多操作. 由若干棵$Splay$组成,每棵$Splay$维护一条链,以深度作为关键字. 也就是说$Splay$的中序遍历相当于从上到下遍历这 ...

  10. 你读过的最好的 C++ 开源代码是什么?

    LevelDb LevelDb是谷歌两位大神级别的工程师发起的开源项目,简而言之,LevelDb是能够处理十亿级别规模Key-Value型数据持久性存储的C++ 程序库.链接:google/level ...