apache服务器参考(1)

 更新时间:2016年11月25日 15:18  点击:2146
序(Preface)
这份手册是 1.0 版阿帕奇服务器(Apache HTTP server)的文件。这个
服务器是阿帕奇计划的产品,此计划试图回应某些对积极发展一套可以
免费取得之 HTTP 服务器的关心。这个计划的目标是提供一个安全的,
有效率的而且可以扩充功能的服务器,此服务器提供 HTTP 服务且符合
目前的 HTTP 标准。
这套阿帕奇 httpd 服务器的设计不但与 NCSA httpd 1.3 相容,并且
提供常常有人要求的特色,像是
。作为身分验认之用的 DBM 资料库
。自定的(customised)错误与问题回应方式
。多重的 directoryindex 指令
。不限次数的 Alias 以及 Redirect 指令
。以内容为基础的(Content-based) 文件协商(negotiation)
。虚拟服务器
阿帕奇授权书
Copyright 1995 The Apache Group. All rights reserved.
假若符合下列条件,无论是否经过修改,以原始程序及执行程序的形式
散播与使用都是许可的:
1. 散播原始程序码必须保留上述的版权告示,这份条件列表以及下列
声明。
2. 以执行程序码的形式散播必须在随附散播的文件以及/或是资讯中
重现上述的版权告示,这份条件列表以及下列声明。
3. 所有提及或使用这套软体特色的广告都必须显示下列讯息:
`This product includes software developed by the Apache Group
for use in the Apache HTTP server project (http://www.apache.org/).'
4. `Apache Server' 以及 `Apache Group' 这些名称没有随附前述的
的许可不得用来为这套软体的衍生产品背书或鼓励采用。
5. 以任何形式散播都必须保留下列讯息:
`This product includes software developed by the Apache Group
for use in the Apache HTTP server project (http://www.apache.org/).'
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following condictions
are met:
1. Redistribution of source code must retain the above copyright
notice, this list of condictions and the following disclaimer.
2. Redistribution in binary form must reproduce the above copyright
notice, this list of condictions and the following disclaimer in
the documentation and/or other materials provided with the
5.1.2 AuthDBMUserFile
语法: AuthDBMUserFile 文件名称
用於: directory, .htaccess
需求: AuthConfig
状态: 扩充
模组: mod_auth_dbm
AuthDBMUserFile 这个文件设定作为验认之用的 DBM 文件名称,其中
包含使用者与密码的列表。文件名称是该使用者文件的绝对路径。
这个文件是以使用者名称作为关键。使用者後的值是 crypt() 加密过
的密码,其後可以加上选择性的冒号以及随意的资料。服务器将会忽略
这些冒号跟资料。
安全: 确定 AuthDBMUserFile 存放在服务器的文件树之外;不要把它
放在它所要保护的目录里。否则客户端将能下载 AuthDBMUserFile 。
参阅 AuthName, AuthType 以及 AuthDBMGroupFile 。
5.2 mod_cookies 模组
这个模组包含在 mod_cookies.c 这个文件里,而且依预设不会编译进
去。它提供 Netscape(TM) cookies 。这个模组没有说明文件。
5.2.1 CookieLog
语法: CookieLog 文件名称
用於: server config, virtual host
状态: 实验
模组: mod_cookies
CookieLog 这个指令设定记录 cookies 用的文件名称。这个文件名称
是 ServerRoot 的相对目录。
5.3 mod_dld 模组
这个模组包含在 mod_dld.c 这个文件里,而且依预设不会编译进去。
它提供在启动时载入可执行文件及模组到服务器里去的功能,使用 GNU dld
程序库。
5.3.1 摘要
这个选用性的 dld 模组是一段作为观念证明(proof-of-concept)用的
程序码,它如同配置自己一般载入其它模组到服务器里去(只有第一次
;目前为止,重新读取配置档无法影响到已经载入的模组),使用 GNU
的动态连结程序库(DLD) 。它没有预设编译进去,因为不是每个人都有
DLD ,但是我在试的时候可以。(注意最後几个字)。
注意因为某些缘故,LoadFile /lib/libc.a 看来似乎是必须的。
注意: 当服务器起动时 DLD 需要读取在服务器程序之外的符号表格;
如果服务器在起动时不能找到它自己的程序码那麽这些指令就会失败。
5.3.2 LoadFile
语法: LoadFile 文件名称 文件名称 ...
用於: server config
状态: 实验
模组: mod_dld
LoadFile 这个指令在服务器起动时链结其所指名的目的档或程序库;
这是用来载入某些模组运作时也许需要的额外程序码。文件名称是相对
PidFile directive
Syntax: PidFile filename
Default: PidFile logs/httpd.pid
Context: server config
Status: core
The PidFile directive sets the file to which the server records the process id of the daemon. If the filename does not begin with a slash (/) then it is assumed to be relative to the ServerRoot. The PidFile is only used in standalone mode.
It is often useful to be able to send the server a signal, so that it closes and then reopens its ErrorLog and TransferLog, and re-reads its configuration files. This is done by sending a SIGHUP (kill -1) signal to the process id listed in the PidFile.
The PidFile is subject to the same warnings about log file placement and security.
--------------------------------------------------------------------------------
Port directive
Syntax: Port number
Default: Port 80
Context: server config
Status: core
Number is a number from 0 to 65535; some port numbers (especially below 1024) are reserved for particular protocols. See /etc/services for a list of some defined ports; the standard port for the http protocol is 80.
The Port directive has two behaviors, the first of which is necessary for NCSA backwards compatibility (and which is confusing in the context of Apache).
In the absence of any Listen or BindAddress directives specifying a port number, a Port directive given in the "main server" (i.e., outside any <VirtualHost> section) sets the network port on which the server listens. If there are any Listen or BindAddress directives specifying :number then Port has no effect on what address the server listens at.
The Port directive sets the SERVER_PORT environment variable (for CGI and SSI), and is used when the server must generate a URL that refers to itself (for example when creating an external redirect to itself). This behaviour is modified by UseCanonicalName.
In no event does a Port setting affect what ports a VirtualHost responds on, the VirtualHost directive itself is used for that.
这里参照的是Apache Server1_3_12_win32版本。
ServerType standalone
#设置服务器的形式是单独启动(standalone),还是借由互联网络伺服程序inetd来启动。一般使用前者。
ServerRoot "d:/Apache"
#设置服务器的Home目录,用来存放服务器的设置文件、错误文件、记录文件。
PidFile logs/httpd.pid
#程序启动时,把父进程httpd的进程号(process id)存在这个文件中。这个文件名可以配合PidFile指令加以改变。
ScoreBoardFile logs/apache_status
#设置网络上WWW服务器一些执行程序的记录文件。
#ResourceConfig conf/srm.conf
#AccessConfig conf/access.conf
#这两个文件的内容已经包含在httpd.conf文件中了。
Timeout 300
#如果客户端300秒还没有连上,或者服务器300秒还没有传送数据到客户端,就会自动断线。
KeepAlive On
#设置是否支持续传功能。
MaxKeepAliveRequests 100
#设置支持续传功能的数目。数目越多则浪费的硬盘空间越多。设置为0则不止持续传。
KeepAliveTimeout 15
#如果该为使用者在15秒后还没有向服务器发出要求,则他在不能续传。
MaxRequestsPerChild 0
#设置同时间内child process数目。
ThreadsPerChild 50
#设置服务器使用进程的数目。
#Listen 3000
#Listen 12.34.56.78:80
#允许使用其它的Port或IP访问服务器。此例中Port为3000,IP为12.34.56.78:80。
#BindAddress *
#设置Apache监听所有的IP,也可以具体的指定。
#LoadModule anon_auth_module modules/ApacheModuleAuthAnon.dll
……
#打开当前未激活预定以的模块。
#ExtendedStatus On
#设置服务器产生的状态信息。
这里参照的是Apache Server1_3_12_win32版本。
Port 80
#设置服务器使用的Port。
ServerAdmin you@your.address
#设置服务器管理者的E-Mail地址。
#ServerName new.host.name
#服务器的主机名。如果你有固定的IP地址,则不需要设置。
DocumentRoot "d:/Apache/htdocs"
#设置存放站点html文件的目录。
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#设置/目录的指令。具体地说明:
Option:定义在目录内所能执行的操作。None表示只能浏览,FollowSymLinks允许页面连接到别处,ExecCGI允许执行CGI,MultiViews允许看动画或是听音乐之类的操作,Indexes允许服务器返回目录的格式化列表,Includes允许使用SSI。这些设置可以复选。All则可以做任何事,但不包括MultiViews。
一、前期准备情况 Apache2(Win32) 完全模块化安装perl,php,ssl
  1、一个安装好的WIN2000服务器,注意:如果你的机器上已经安装了IIS,将IIS里的所有web站点停掉或端口先改成别的。
  2、下载软件
APACHE 2.0.48
Perl 4.3.1
PHP 4.3.1
MYSQL 4.0.12
ZendOptimizer
  还有几个小东西,很重要,后面的安装会用到(不会全用到,有些文件是编译好的,可以直接用)
  下载地址1: http://www.xdiy.net/soft/serv.rar
  下载地址1: http://www.techxy.com/xdiy/serv.zip
  包里面是:mod_perl 1.9/ mod_ssl 2.0.43/ OpenSSL 0.9.6h/ mod_jk/ ApacheModuleGzip.dll
  gd 2.0.9/ gdpm/ perldiver 1.1/ 中文php.ini/editplus /php_gd_gif.dll 等
  二、安装开始
  1、APACHE安装
  1.1:运行apache_2.0.44-win32-x86-no_ssl.msi,
  假设我的安装的默认路径是 X: ,这样就安装在x盘下的APACHE2的路径下,同时默认域为domain.com。
  1.2:(作一个虚拟主机,此步可以不做)
  编辑X:apache2confhttpd.conf
  找到 #NameVirtualHost *
  修改为 NameVirtualHost 192.168.0.1 #注意这个IP为你自己主机设的IP
  找到 ServerName domain.com 修改为 #ServerName domain.com
  找到ServerAdmin * (*是你安装apache时所填写的邮箱地址)修改为 #ServerAdmin
  接下来添加以下语句:#……的是我的注释,不用加,看一下就可以了
<VirtualHost 192.168.0.1>
ServerAdmin webmaster@domain.com
#主机管理员(联系人)的邮箱地址
ServerName domain.com
#主机名(主机头名)
ServerAlias domain.com www1.domain.com
#主机名(同样可以生效的主机头名)
document.oot X:/VirtualHost/domain.com/www.domain/wwwroot
#该虚拟主机的的www根目录.
ErrorLog X:/VirtualHost/domain.com/www.domain/logs/www.domain-error_log
#错误日志文档,也可以是../logs/www.domain-error_log
CustomLog X:/VirtualHost/domain.com/www.domain/logs/www.domain-access_log common
ScriptAlias /cgi-bin /cgi-bin
#指定perl脚本运行目录,当然,不指定的话整个目录全部可以运行
ScriptAlias /php4/ "/php-bin"
#指定php脚本运行目录,当然,不指定的话整个目录全部可以运行
[!--infotagslink--]

相关文章

  • 通过两种方式增加从库――不停止mysql服务

    一般在线增加从库有两种方式,一种是通过mysqldump备份主库,恢复到从库,mysqldump是逻辑备份,数据量大时,备份速度会很慢,锁表的时间也会很长。另一种是通过xtrabackup工具备份主库,恢复到从库,xtrabackup是物理备份,备份速度快...2015-11-08
  • 分享一段php获取linux服务器状态的代码

    简单的php获取linux服务器状态的代码,不多说-直接上函数:复制代码 代码如下:function get_used_status(){ $fp = popen('top -b -n 2 | grep -E "^(Cpu|Mem|Tasks)"',"r");//获取某一时刻系统cpu和内存使用情况 $rs =...2014-05-31
  • Springboot+TCP监听服务器搭建过程图解

    这篇文章主要介绍了Springboot+TCP监听服务器搭建过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-10-28
  • 服务器 UDP端口占用几千个的解决办法

    前一段时间使用NetStat命令查看服务器端口时,发现服务器udp端口开放了好多,最少在1000个以上,当时事情比较多,没有管它,今天终于有点时间,仔细检查了一下,排除了这个问题. ...2016-01-27
  • 安全地关闭MySQL服务的教程

    普通关闭 我的mysql是自己下载的tar包,自己设定安装目录来安装的。停止mysql服务,说来简单,但不知道的话,还真是挠头。在这和mysql入门的同学们共享:)正确方法是,进入mysql的bin目录下,然后执行./mysqladmin -uroot -p shut...2015-11-24
  • PHP连接公司内部服务器的MYSQL数据库的简单实例

    “主机,用户名,密码”得到连接、“数据库,sql,连接”得到结果,最后是结果的处理显示。当然,数据库连接是扩展库为我们完成的,我们能做的仅仅是处理结果而已。...2013-09-29
  • 解决HttpPost+json请求---服务器中文乱码及其他问题

    这篇文章主要介绍了解决HttpPost+json请求---服务器中文乱码及其他问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-22
  • Apache启动报错No space left on device: AH00023该怎么解决

    Apache启动报错No space left on device: AH00023错误可能是进程导致了,虽然小编不知道什么原因但网上提供的解决办法确实是可以解决我们的问题,下面来看看。对于这类错误是因为linux系统的ipc信号量造成的,apache启动时...2015-10-21
  • vue配置多代理服务接口地址操作

    这篇文章主要介绍了vue配置多代理服务接口地址操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-09-08
  • apache配置黑名单和白名单及账户权限控制

    本文我们将分享apache配置黑名单和白名单,apache层的账户权限控制,以及apache黑名单白名单过滤功能,apache rewrite规则实现白名单。 apache配置黑名单和白名单的两...2016-09-14
  • Hyper-V尝试连接到服务器出错无效类的解决方法

    这篇文章主要介绍了Hyper-V尝试连接到服务器出错无效类的解决方法,需要的朋友可以参考下...2016-09-28
  • mac使用Shell(终端)SSH连接远程服务器的方法

    这篇文章主要介绍了mac使用Shell(终端)SSH连接远程服务器的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-07-11
  • js实现上传图片到服务器

    这篇文章主要为大家详细介绍了js实现上传图片到服务器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-04-11
  • apache开启gzip详解教程

    今天在用百度工具检测时发,发现有个提示如下 原来可以开启gzip啊,因为我的是apache所以和iis不同,经过网站搜索开启方法如下 一,找到你的httpd.conf文件,打开找到如下 ...2016-01-28
  • AngularJS内建服务$location及其功能详解

    这篇文章主要为大家详细介绍了AngularJS内建服务$location及$location功能,感兴趣的小伙伴们可以参考一下...2016-07-06
  • c# HttpWebRequest通过代理服务器抓取网页内容应用介绍

    在C#项目开发过程中可能会有些特殊的需求比如:用HttpWebRequest通过代理服务器验证后抓取网页内容,要想实现此方法并不容易,本文整理了一下,有需求的朋友可以参考下...2020-06-25
  • 解决PHPstudy Apache无法启动的问题【亲测有效】

    这篇文章主要介绍了PHPstudy Apache无法启动的问题及解决方法【亲测有效】,本文给大家总结了三种方法供大家参考,需要的朋友可以参考下...2020-10-30
  • apache http server遇到了一个问题,需要关闭

    重装系统后,重新安装了xamp,最近启动的时候经常报apache http server遇到了一个问题,需要关闭,显示如图: 解决方法:查看szModName报错的模块,然后把PHP安装目录下对应的模块...2016-01-28
  • C#创建Windows服务的实现方法

    这篇文章主要介绍了C#创建Windows服务的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • uploader秒传图片到服务器完整代码

    这篇文章主要为大家详细介绍了uploader秒传图片到服务器的完整代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-04-27