linux下Apache服务器使用入门----httpd.conf
如果安装centos,系统本身已经安装了apache,名字为httpd这个服务就是对应的apache
service httpd start service httpd stop service httpd restart
下面介绍一下apache的几个重要的配置文件
1 httpd.conf
这个文件在/etc/httpd/conf目录下,文件大致分为三个部分:
主服务器部分
这个部分主要是使用一些参数定义服务器的功能等等。
### Section 1: Global Environment ServerTokens OS ... ServerRoot "/etc/httpd" ---------定义与服务器所在的目录,这个目录在安装时由-prefix=ServerRoot 来选定 ... PidFile run/httpd.pid ... Timeout 60 ... KeepAlive Off ... MaxKeepAliveRequests 100 ... KeepAliveTimeout 15 ...
ServerAdmin root@localhost-----------定义当服务器出现错误后提示给客户端的管理员邮件地址
#ServerName www.example.com:80----------定义apache默认的主机名字,但默认备注释掉
DocumentRoot "/var/www/html"----------指令用于指定apache所提供页面服务的根目录
Alias /error/ "/var/www/error/"-----------实现映射目录功能,映射为一个普通目录
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"----------实现映射,与Alias不同的是它将映射的目录识别为CGI脚本目录并将此目录中的所有文件都作为CGI脚本来对待
User apache Group apache--------定义运行apache服务器的账号和工作组,用来定义用户请求时所创建的子进程的账号与工作组
#Listen 12.34.56.78:80--------定义监听端口号,默认是80 Listen 80
# Example:---------------------------------------------------用于加载模块的目标文件 # LoadModule foo_module modules/mod_foo.so # LoadModule auth_basic_module modules/mod_auth_basic.so LoadModule auth_digest_module modules/mod_auth_digest.so LoadModule authn_file_module modules/mod_authn_file.so LoadModule authn_alias_module modules/mod_authn_alias.so LoadModule authn_anon_module modules/mod_authn_anon.so LoadModule authn_dbm_module modules/mod_authn_dbm.so LoadModule authn_default_module modules/mod_authn_default.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule authz_user_module modules/mod_authz_user.so LoadModule authz_owner_module modules/mod_authz_owner.so LoadModule authz_groupfile_module modules/mod_authz_groupfile.so LoadModule authz_dbm_module modules/mod_authz_dbm.so LoadModule authz_default_module modules/mod_authz_default.so LoadModule ldap_module modules/mod_ldap.so
# Some examples:---------------------------当错误时,apache定义一个http相应代码,并根据相应代码显示相应网页 #ErrorDocument 500 "The server made a boo boo." #ErrorDocument 404 /missing.html #ErrorDocument 404 "/cgi-bin/missing_handler.pl" #ErrorDocument 402 http://www.example.com/subscription_info.html
<Directory "/var/www/error"> AllowOverride None Options IncludesNoExec----------------决定在那些目录中使用那些服务器的特性 AddOutputFilter Includes html AddHandler type-map var Order allow,deny Allow from all LanguagePriority en es de fr ForceLanguagePriority Prefer Fallback </Directory>
容器环境部分
<IfModule>作用于模块,它会首先判断是否载入,然后决定是否进行处理。
<IfModule mod_dav_fs.c> # Location of the WebDAV lock database. DAVLockDB /var/lib/dav/lockdb </IfModule>
<IfDefine>与上面的<IfModule>类似,只有对应的条件满足时,才会执行。
<Directory>模块作用是让它所封装的指令在指定的目录以它的子目录中中起作用,这个目录必须是一个完整的路径。
<Directory "/var/www/error"> AllowOverride None Options IncludesNoExec AddOutputFilter Includes html AddHandler type-map var Order allow,deny Allow from all LanguagePriority en es de fr ForceLanguagePriority Prefer Fallback </Directory>
<Files>这个容器与<Directory>容器作用于目录相对应,<Files>容器只作用于文件
<Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy All </Files>
<Location>对到来的URL进行匹配
#<Location /server-status> # SetHandler server-status # Order deny,allow # Deny from all # Allow from .example.com #</Location>
服务器扩展部分
这个部分主要就是用Inlcude来加载配置文件
Include conf.d/*.conf
在/etc/httpd/conf.d目录中:
[root@localhost httpd]# cd conf.d/ [root@localhost conf.d]# ls mod_dnssd.conf README welcome.conf [root@localhost conf.d]#
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?