• Apache主要配置文件http.conf


    1、基本概念

    Define SRVROOT "/Apache24"
    ServerRoot "${SRVROOT}"
    #Apache安装的根路径
    
    #Listen 12.34.56.78:80
    Listen 80
    #Apache服务器监听的IP地址和端口,只写端口表示会监听这台服务器上所有的IP
    
    # LoadModule foo_module modules/mod_foo.so
    #动态加载模块,比如代理模块、PHP模块(这样才能识别PHP)
    #LoadModule access_compat_module modules/mod_access_compat.so
    LoadModule actions_module modules/mod_actions.so
    LoadModule alias_module modules/mod_alias.so
    LoadModule allowmethods_module modules/mod_allowmethods.so
    LoadModule asis_module modules/mod_asis.so
    ......
    
    User daemon
    Group daemon
    #设置Apache在什么账户下运行,如果使用root登录则存在很大风险,用户组Group起到风险隔离
    
    ServerAdmin admin@example.com
    #有些时候服务器出现故障时,需要服务器自动发邮件给管理员
    
    ServerName localhost:80
    #ServerName可以是机器名或IP,即localhost或127.0.0.1
    
    <Directory />
        AllowOverride none
        Require all denied
    </Directory>
    #设置接入的访问权限
    
    DocumentRoot "${SRVROOT}/htdocs"
    #Apache服务器下面的网站默认路径是在htdoc,即只需要把PHP文件放在该文件夹下就能被Apache找到、识别并执行
    <Directory "${SRVROOT}/htdocs">
    ......
    #具体路径以及权限设置和属性
    
    <IfModule dir_module>
        DirectoryIndex index.html
    </IfModule>
    #如果不设置具体访问哪个文件,就会返回DirectoryIndex指定的网页,按顺序查找,比如index.html、index.php等
    
    <Files ".ht*">
        Require all denied
    </Files>
    #某一类或某一个文件的权限设置
    
    ErrorLog "logs/error.log"
    #服务器出错的时候日志输出位置,这里不以/开头表示相对路径,即相对于ServerRoot而言的路径
    
    LogLevel warn
    #日志输出级别的设置,开发的时候可以设置debug,这样调试信息丰富,但是文件产生的较多,实际应用时设置warm即可
    
    <IfModule logio_module>
       # You need to enable mod_logio.c to use %I and %O
        LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %I %O" combinedio
    </IfModule>
    #日志文件输出格式
    
    CustomLog "logs/access.log" common
    #自定义写log的路径
    
    <Directory "${SRVROOT}/cgi-bin">
        AllowOverride None
        Options None
        Require all granted
    </Directory>
    #规定cgi-bin路径下的权限设置
    
    Include conf/extra/httpd-autoindex.conf
    #其他路径下的配置文件
    
    <IfModule ssl_module>
    #Include conf/extra/httpd-ssl.conf
    Include conf/extra/httpd-ahssl.conf
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
    </IfModule>
    #SSL模块的配置属性

    2、常见写法

    (1)直接配置

    ServerRoot "${SRVROOT}"
    
    Listen 80

    (2)加载其他配置文件--Include

    Include conf/extra/httpd-info.conf

    (3)加载动态模块--LoadModule

    LoadModule actions_module modules/mod_actions.so

    (4)条件设置

    <IfModule dir_module>
        DirectoryIndex index.html
    </IfModule>
    #只有定义了dir_module的时候才会执行DirectoryIndex
    #条件执行的还有IfDefine、IfModule等

    (5)文件夹设置

    <Directory />
        AllowOverride none
        Require all denied
    </Directory>
    #Directory对某一个目录的文件夹进行设置,这里/表示对所有文件进行设置,也可设置某一个文件夹
    
    <Files ".ht*">
        Require all denied
    </Files>
    #对文件的权限进行设置,这里是指对后缀为ht的所有文件进行权限设置,Require all denied表示拒绝用户的请求,这里面包含的是password信息

    3、常见配置

    ‍打开方式:conf文件夹下或XAMPP中点击configure

    (1)httpd.conf是主要配置文件,还有其他的配置文件

    (2)"/"开头表示绝对路径,其他的是相对路径,即相对于ServerRoot而言

    (3)ServerName可以是localhost或127.0.0.1,XAMPP安装的不需要设置,直接自动设置为localhost

    (4)ServerRoot表示配置选项或其他选项的根路径,便于后期设置相对路径‍

  • 相关阅读:
    MySQL性能指标及计算方法(go)
    Flashback for MySQL 5.7
    oracle_外部表的两种实现方式oracle_loader[datapump]
    oracle数据库内存调整之增加内存
    Leetcode: Binary Tree Paths
    Leetcode: Verify Preorder Sequence in Binary Search Tree
    Leetcode: Meeting Rooms II
    Leetcode: Meeting Rooms
    Leetcode: Flatten 2D Vector
    Leetcode: Count Univalue Subtrees
  • 原文地址:https://www.cnblogs.com/yedushusheng/p/5519314.html
Copyright © 2020-2023  润新知