浏览器仅能够解码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. java登录图形界面

    编写程序,利用JtextField和JpasswordField分别接收用户输入的用户名和密码,并对用户输入的密码进行检验.对于每个用户名有三次密码输入机会. package beizi; impor ...

  2. vue 实现模块上移下移 实现排序

    效果图 上移 下移 首先想到的是 数组的相互替换嘛 <template> <div> <div class="box" v-for="(it ...

  3. listings技巧

    1. \lstdefinestyle 参考 https://blog.csdn.net/ProgramChangesWorld/article/details/52142313 我们在使用listin ...

  4. 整合zuul启动时报错Correct the classpath of your application so that it contains a single, compatible version of XXX

    今天集成zuul与consul的时候,出现如下错误 ***************************APPLICATION FAILED TO START******************** ...

  5. Jmeter接口测试【1】_安装配置教程

    一.安装Java环境 1.下载JDK JDK 可以到官网选择windows系统版本(32位/64位)下载http://www.oracle.com/technetwork/java/javase/do ...

  6. [转帖]Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31

    Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31 https://www.kubernetes.org.cn/6252.html 2019-12-13 11:59 ali ...

  7. SpringApplication常见用法说明

    启动方式 方式1:在main方法中执行SpringApplication.run()这种方式来启动我们的工程 // 方式一 @SpringBootApplication public class Ap ...

  8. NodeJS 使用内容以及模拟一个接口

    1.结合上一篇 安装完Nodejs之后 通过手动创建一个完整的NodeJs项目 2.https://www.jianshu.com/p/7b0a5d4491ba 创建一个完整的项目之后 3.下面是一个 ...

  9. C++强大背后

    转自MiloYip大神的博客 [原文]http://www.cnblogs.com/miloyip/archive/2010/09/17/behind_cplusplus.html 在31年前(197 ...

  10. PowerBI开发 第四篇:DAX 表达式基础

    DAX 表达式主要用于创建度量列(Measure),度量值是根据用户选择的Filter和公式,计算聚合值,DAX表达式基本上都是引用对应的函数,函数的执行有表级(Table-Level)上下文和行级( ...