zoukankan      html  css  js  c++  java
  • php基础入门(一)环境搭建与配置

    最近在学习PHP,以下是看PHP100视频教程,做的学习笔记,在这里存放以便今后使用。

    apache--PHP--DB(mysql)


    一、apache:基本工作

    ·用户通过浏览器访问服务器的文件,它就将该文件传递给用户,在用户的浏览器显示该文件的内容。

    ·普通文本文件,可以通过apache直接传给用户浏览器显示。

    ·程序文件,比如PHP,它不能直接在浏览器显示,所以需要apache先调用PHP的某个组件,将PHP文件解析执行后,再返回给apache,apache再将这个执行后的文件,传给用户浏览器显示。

    关键配置:

    配置文件:conf/httpd.conf;(每次修改完这个文件后,需要重启apache)

    1.引入PHP组件
    因为在用户访问PHP文件时,apache能够调用到PHP组件,来执行该PHP文件。所以apache在配置的时候,需要在配置文件中,将PHP的组件和它关联起来。
    例如我将apache安装在F盘的Program里面,所以它的组件路径就是:LoadModule php5_module "f:/Program Files/php54/php5apache2_2.dll"


    2.设置什么时候去调用PHP组件
    由于不是用户每次访问的都是PHP文件,所以不是需要每次都让apache都要去调用PHP解析组件。因些需要让apache判断什么时候,才去调用apache.即后缀名,是.php的时候才调用。
    在这个标签里面<IfModule mime_module></IfModule>加如下这句:
    AddType application/x-httpd-php .php

    3.PHP的置配文,路径
    PHPIniDir "f:\Program Files\php54"

    以上是最关键,必不可少的配置。

    其它配置:

    在PHP目录中,有两个配置文件 php.ini-development和php.ini-productor 把其中一个名字改成 PHP.INI 就可以了

    1.目录权限:
    【<Directory "F:/Program Files/Apache2.2/htdocs">】通过这个设置,可以控制访问服务器的目录。

    注意这里面的目录级别要大于或等于【DocumentRoot "F:/Program Files/Apache2.2/htdocs"】

    例如:<Directory "F:/Program Files/Apache2.2/htdocs"> 只能访问htdocs目录下的站点目录。
    <Directory "F:/Program Files/Apache2.2> 可以访问Apache2.2目录下的所有站点目录。

    2.默认访问首页的文件名配置:
    【<IfModule dir_module>DirectoryIndex index.html index.htm index.php</IfModule>】通过这个设置,可以控制站点默认的首页;
    类似于IIS服务器配置的主机头;

    3.日志
    logs/access.log 这个文件记录用户的访问,访问的IP 页面,等信息;

    4.错误提示信息配置
    # Some examples:
    #ErrorDocument 500 "The server made a boo boo."
    #ErrorDocument 404 /missing.html
    #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
    #ErrorDocument 402 http://FREESKYC-B2D592.bavo/subscription_info.html
    #

    二、多站点配置

    原理:用户通过域访问同一个IP地址的服务器时,服务器上的apache将不同的域名,指向服务器不同或相同的文件夹目录。这个过程也叫虚拟主机;

    1.目录权限:
    【<Directory "F:/Program Files/Apache2.2/htdocs">】通过这个设置,可以控制访问服务器的目录。

    注意这里面的目录级别要大于或等于【DocumentRoot "F:/Program Files/Apache2.2/htdocs"】

    例如:<Directory "F:/Program Files/Apache2.2/htdocs"> 只能访问htdocs目录下的站点目录。
    <Directory "F:/Program Files/Apache2.2> 可以访问Apache2.2目录下的所有站点目录

    2.载入多站点的组件:

    在apach的配置文件靠近最下方有

    #Include conf/extra/httpd-vhosts.conf

    把这个#号去除,就可以载入这个组件;

    3.配置这个多站点的组件

    在apach安装目录里面的
    conf\extra\httpd-vhosts.conf
    找到这个文件 进行配置

    4.配置说明:
    NameVirtualHost *:8080 这里的端口号,必须和apach配置文件中一至

    ServerAdmin:管理员的邮件地址,为不同站点可以设不同的邮件地址,如果不设置,默认会找到apach配置文件里面的管理员邮件地址;
    DocumentRoot 是指向的虚拟目录
    ServerName: 需要绑定的域名或IP
    ServerAlias 绑定多个域名
    ErrorLog 错误日志存放路径,为不同站点建立不同的错误日志
    CustomLog 日志文件

    以上只需要配置好
    例如:
    <VirtualHost *:8080>
    DocumentRoot "F:/Program Files/www/bcom"
    ServerName 127.0.0.3:8080
    </VirtualHost>
    两个就可以了,复制以上代码,改变目录和绑定的域名,就可以有多个站点了

    要注意的是,
    *在apach里面的目录权限要和这个多站点的目录对应
    即:
    <Directory "F:/Program Files/www">

    *配置好多站点之后,apach就不会去找先前默认的站点了
    这一句也就不起作用了:DocumentRoot "F:/Program Files/apach/htdocs"

    *并且在地址栏目中如果输入了不存的,绑定的域名,apach会自动指向到多站点置配中的第一个站点目录

  • 相关阅读:
    实验十三 团队作业9:Beta冲刺与团队项目验收
    《你们都是魔鬼吗》团队作业Beta冲刺---第一天
    #《你们都是魔鬼吗》第八次团队作业:第五天Alpha冲刺
    《你们都是魔鬼吗》第八次团队作业:第三天Alpha冲刺
    《你们都是魔鬼吗》第八次团队作业:第四天Alpha冲刺
    《你们都是魔鬼吗》第八次团队作业 第二天Alpha
    《你们都是魔鬼吗》第八次团队作业:第一天Alpha冲刺
    《你们都是魔鬼吗》实验十二 团队作业八:Alpha冲刺
    Redis主从复制实现原理
    Redis数据类型之SDS简单动态字符串
  • 原文地址:https://www.cnblogs.com/lufy/p/2601644.html
Copyright © 2011-2022 走看看