美文网首页
1.php环境配置

1.php环境配置

作者: Stago | 来源:发表于2018-06-06 19:39 被阅读0次

关于php

应用领域

web服务器端脚本:主要作用;
应用程序图形界面;
命令行脚本 :
o 运行php文件:php.exe -f "php文件路径"
o 运行php代码:php.exe -r "php脚本代码"

运行环境

web软件的运行模式中,总是先在客户端(浏览器端),发起一个“请求”,然后,服务器端才产生反馈动作(就是“运行”程序),并因此而返回给该浏览器一定的信息——就是所谓的应答(响应);

运行过程中所涉及到的一些技术或软件有:


相关.png

其中浏览器端的技术是“无可替代”的,而其他端都是可替代的。

web运行流程

  • 浏览器输入地址,发送请求

  • 根据规则找到对应web服务器。规则如下:

    • 首先在本机hosts文件中找对应IP
    • 如果hosts中没有找到,则到互联网上找对应IP(DNS服务器中)
    • 如果还是没有找到,则终止请求,返回“找不到服务器”提示
  • web服务器取得对应文件(就是请求的文件)

  • 如有需要(比如php文件),对该文件进行一定的处理(比如php代码执行)

  • 将文件(或执行结果文件)返回给浏览器(返回应答)

  • 浏览器接收到文件

  • 浏览器处理文件(显示/执行)

php网页运行原理

php的模块配置

php(语言模块)是apache的众多模块之一
mysql是php语言中的众多模块之一

  • 目标:运行一行“连接mysql数据库”的代码:



    但运行结果却是报错:调用未定义的函数!



    这是,因为,mysql作为一个php的“模块”尚未配置
  • 解决,分2步:
    第一步:
    在php.ini文件中,设定php模块所在的路径(查找关键字extension_dir):


我们要修改为指向php语言包中的ext这个目录的“完整物理路径”:


  • 第2步:
    “打开”mysql这个模块就可以了(查找关键字php_mysql.dll):


修改为:


然后,重启apache,重新浏览刚才的网页,结果为:



下面就可以安装mysql数据库软件,以“建立”mysql数据库服务器。

安装mysql


安装完成后,重新浏览刚才的php网页(将代码略修改为以下):



结果为:


主机(站点)配置

一个站点的2个核心信息为:

主机名(服务器名/站点名): ServerName 服务器名
站点位置(站点目录路径): DocumentRoot “实际物理路径”

默认情况下,apache安装成功,就默认配置好了一个“站点”,该站点的实际位置在:

apache安装位置/htdocs/
默认主机名是安装时设置的,比如www.abc.com,当然,也可以使用localhost

单站点配置项

端口监听:
在apache的主配置文件httpd.conf中:



也可以写为:



实际应用中,我们几乎都是80。

设置主机(站点)的名字:服务器名,站点名
ServerName 服务器名


设置主机(站点)的物理路径:
形式:
DocumentRoot “实际物理路径”
重要观念:

站点就是“文件夹”——我让它当站点,它就是站点。



在浏览“localhost”,发现被进制访问(Forbidden),然后添加访问权限,如下:



就可以了。

目录访问权限


目录访问权限中的“分布式权限”:
对于某个目录的访问权限,我们在apache中使用Directory来设定,但可能不够方便:

1,apache配置修改,必须重启apache
2,某个站点中的“下级目录”访问权限,不方便单独设置,

这种,可以称为“集中式权限”;

分布式权限,就是:针对某个网站的任何一个下级目录,都可以单独去设置其访问权限,并且可以不重启apache就生效。

做法:分2步:

  • 第1步:
    在该站点对应目录权限的Directorty配置中添加一条:


  • 第2步:
    在该目录下的任何子目录中,创建一个特殊的文件( .htaccess ),在该文件中写所需要的“权限内容”(几乎跟Directory中的写法一样):

多站点的配置

分3步:

  • 第1步:
    在apache的主配置文件httpd.conf中,“打开”多站点虚拟主机配置文件项(关键词:vhosts):


  • 第2步:
    在httpd-vhosts.conf文件中,设定希望提供“多站点”服务的IP地址和端口号,通常默认就是::80,其中“”代表所有IP,默认其实apache安装好之后就设置好了,无需手动设置(关键字NameVirtualHost):

  • 第3步:
    然后就一个站点一个站点加上!形式如下:


注意:

1,先把httpd-vhosts.conf文件中的2个初始安装生成的站点,删除!!!
2,每个站点的设置项,主要就3个:
ServerName,
DocumentRoot,
<Directory>...</Directory>
3,在多站点配置中,第一个站点被称为“默认站点”,如果某个请求的域名无法跟任何一个站点“匹配”,就会当做请求的是默认站点去处理(应答)
4,一旦实现了多站点配置,则最初安装成功时的“默认站点”就失效了,我们可以将“localhost”当做一个普通站点重新设置就可以了,也可以将其放在第一个位置又重新作为默认站点。

站点别名的设置:

目录别名(虚拟目录)的设置:

某个站点www.abc.com所对应文件夹下有一个目录为d1,则可以这样访问该目录:
www.abc.com/d1
这个d1就称为“真实目录”;
虚拟目录就是:
该站点下不存在某目录名,但却可以使用同样的语法形式,去访问,比如:
www.abc.com/d2 //假设该站点目录下根本就没有d2这个目录,此时却可以访问

实现这种技术,就是所谓“目录别名”(虚拟目录)的设置,如下:
在一个站点中,做如下2步:

  • 第1步:
    设置目录别名的名字和其对应的“实际真实目录(文件夹位置)”:
    Alias /目录别名的名字 “实际真实目录(文件夹)的位置”
  • 第2步:
    设置该真实目录的访问权限(否则是禁止访问的):
    <Directory “真实目录路径”>
    。。。。。。跟其他目录权限设置一样
    </Directory>

相关文章

  • 命令行运行php -v 遇到的问题

    环境为:phpstudy 配置php环境变量 1.PHP Deprecated: Directive 'tra...

  • 1.php环境配置

    关于php 应用领域 web服务器端脚本:主要作用;应用程序图形界面;命令行脚本 :o 运行php文件:ph...

  • PHP的配置

    1.PHP环境配置(类似于java的jdk环境配置,按照百度来还是很简单的)。 2.(关键是php.in的配置):...

  • 3.php

    1.php配置

  • phpstorm 配置xdebug

    1.php环境配置 安装xdebug扩展,然后在php.ini中配置: 2.ide配置 3.谷歌浏览器安装xdeb...

  • 云盘程序server搭建备忘

    1.PHP添加fileinfo扩展; 程序中使用到fileinfo相关的函数 2.Nginx配置添加cors相关配...

  • Mac下PHP配置

    1.php直接运行,有报错找不到配置文件。 $ php-fpm[11-Jan-2014 16:03:03] ERR...

  • spring boot 配置sqlserver数据库

    1、pom文件配置 2、配置文件2.1基础配置文件 2.2 开发环境配置环境 2.3 运行环境配置 2.4 测试环境配置

  • 001.基础环境变量配置

    1.JDK环境配置 2.Ant环境配置 3.CXF环境配置 4.Axis2环境配置 5.Tomcat环境配置 6....

  • 开发环境搭建(RN中文网教程)

    基础环境 配置JDK环境 略 配置NODE环境 略 安装Android Studio 配置android开发环境...

网友评论

      本文标题:1.php环境配置

      本文链接:https://www.haomeiwen.com/subject/lyjisftx.html