奇趣技术网 收藏本站
设为主页
商务合作
首页 新闻中心 行业动态 软件新闻 安全资讯 病毒预警 漏洞发布 操作系统 Dos Win9x Win2000 WinXP Win2003 WinVista Linux Unix
数据库 DB2 Access MSSQL MySQL Oracle Sybase 编程技术 ASP PHP JSP CGI/Perl XML .Net C/C++/C# VB VC Delphi Java 汇编
安全技术 安全教学 工具介绍 漏洞利用 病毒防范 入侵检测 防火墙 安全防范 汉化破解 攻击实例 加密解密 技术论坛
中华网络安全联盟 >> 程序开发 >> Perl >> Apache用户指导手册
程序开发
Asp
PHP
JSP
CGI/Perl
XML
.Net
C/C++/C#
Visual Basic
Visual C++
Delphi
Java
汇编语言
  • LB5000XP论坛配合SERV

  • 获取随机的由大小写字

  • Perl操作Mysql数据库

  • Perl在NT下的快速简便

  • 用Perl制作页面计数器

  • 用Perl语句来代替常用

  • 用 perl 实现文件上传

  • perl 域名查询程序

  • Apache用户指导手册
    字体:

    中华网络安全联盟    作者:佚名    来源:网络转载    时间:2006-3-21


    Apache User's Guide
    随着 LINUX的不断普及,很多的朋友把REDHAT安装到了自己的计算机上,从此也就开始了对REDHAT的摸索。我在这里也把我的一点心得体会告诉大家,希望对大家有所帮助。
    Apache 的安装
    通常来说,大家在安装时可以选择安装WEB SERVER ,并在INTERNET SERVICES中开启httpd这一相服务,这样系统就会自动的安装好apache,并且在系统第一次启动时启动httpd进程。在作好一些相应的配置后,在你的Xwindows环境下打开NETSCAPE,并在URL中填入localhost 或本机的IP地址,就会访问到apache的默认的页面。

    如果说你没有安装WEB SERVER ,你可以重新安装并选择UPDATE,挑选apache的软件包安装到本机。当然,如果你想要安装最新的版本,可以到http://www.apache.org/ 网站上去下载最新的版本。如果是原文件,需要做一些相应的配置,然后编译原文件。如果是下载的二进制文件,就可以直接配置你的WEB 服务器。至于编译原文件后和配置工作,我们暂时不提,先讲一讲在安装系统时就安装了apache 的情况下的配置过程。
    系统启动时会去启动httpd的服务,通常没有改过配置,httpd是起不来的。报的错误是ServerName not idnetify. 这是由于默认的配置没有指定服务的名称,这时你可以手动修改配置文件就可以了。具体的方法是:
    1. 编辑 /etc/httpd/conf/ 目录下的httpd.conf文件,找到ServerName 这一项参数,这一行是被注释掉的(前面有#的符号)。去掉前面的在"#"符号,并在后面填入你的hostname或IP地址。
    2. 从新启动httpd进程。
    # /etc/rc.d/init.d/httpd stop
    # /etc/rc.d/init.d/httpd start
    然后在Xwindows的界面下启动netscape,在URL中输入localhost或本机的IP地址,就可以看到apache 的一个页面了,从这个页面上你可以看一看关于apache的文档,学习一下他的有关内容。

    这样一个主页的进程就配置好了,你将自己的主页拷贝到/home/httpd 目录中,再用netsacpe访问自己的机子,就会发现现在显示的是你自己的主页。你的主页就这样配置好了,别的机子只要在浏览器中填入你的IP地址就可以访问到你的主页了。如果你想要有域名的话,就得另外申请了。
    注意有时会有下面的情况:当你用NETSACPE访问了你的页面,这时,你重新更换默认目录中的内容,可是不管你如何在NETSCAPE中RELOAD都无法调入你新的内容。
    产生这种情况的原因是NETSCAPE直接调用CACHE中的内容,没有真正的读取你文档的内容。解决的方法是在NETSCAPE中清空CACHE。具体的步骤如下:
    1. 选择菜单中的Edit
    2. 在最下面选择 Preference
    3. 在左边的菜单中选择Advanced
    4. 在他的下拉菜单中选择Cache
    5. 点击 Clear Disk Cache 和 Clear Memory Cache 按钮。
    这样清空了NETSCAPE 的CACHE后,就可以看到你更新后的页面了。

    http 的命令行参数
    httpd 是一个可执行的文件,他的位置是在/usr/bin目录里。用这个命令我们可以手动的启动一个WWW的服务,这样使得别人可以访问你的主页。他的具体参数是:
    -d serverroot
    这个参数告诉httpd在何处去取启动时所需的配置参数,serverroot是存放配置文件的命令名。
    -f config
    配置文件的名称,默认的值是httpd.conf。如果没有给定目录,就会到serverroot的目录中取找这个文件。
    -X
    启动单进程模式。意思是不会产生任何子进程,也就是你只能看到index.html这一页,点击上面的链接都不会有反应。
    -v
    显示httpd的版本号。
    -l
    显示编译进httpd的模块名称。
    -?
    显示httpd 的参数
    了解了上面的参数后,我们就可以手动的启动一个服务:
    #httpd 杁 /etc/httpd/mywebconf
    在 /etc/httpd.mywebconf目录中存放了你的WEB SERVER 的配置文件,下面就具体的介绍一下该目录中的配置文件的名称和内容。
    配置文件的内容和参数意思
    在配置目录中有三个文件,分别是:
    1. conf/httpd.conf :
    ServerType :有两个值可供选择standalone 和inetd
    Standalone :
    表示你的httpd进程,是以一个单独的守护进程(daemon)的方式
    在后台侦听是否有客户端的请求。
    Inetd :
    表示你的httpd进程不是以守护进程(daemon)的方式运行,而是由
    Inetd 这个 internet services的进程侦听,一旦有客户的请求,他会自动的启动httpd
    这个进程来提供相应的服务。
    默认的是Standalone方式,如果你不是对 ARPA Berkeley Services 不是很了解的
    话,不要更改。
    Port : 你分配给你的WEB SERVER 的端口号。
    Httpd 的默认端口是80,也可以分配给自己的WEB SERVER 一个大于1024 的
    端口号。如果你这样作,你必须在你的URL后面跟上你的端口号才能访问到你
    的页面。比如你分配给你的服务的端口号是8888,那么你访问时需要输入
    http://domainname:8888
    ServerAdmin :服务管理员的email 地址,默认的是本机的root用户,所以是
    root@localhost
    ServerRoot :用来存放服务的配置、出错和记录文件的目录。
    BindAddress :虚拟主机的IP地址。用一台机子虚拟多台机子。
    ErrorLog :用来存放你WEB SERVER的出错信息的文件。
    TransferLog :用来存放记传输过的文件名的记录文件。
    PidFile :该指定的文件存放了httpd进程的进程号,用来停止WEB SERVER。
    ScoreBoardFile :用来存放进程的信息。
    ServerName :你机子的名称,如果你有域名,填入你本机的域名。如果没有,就
    填入你的主机名或IP地址。
    Timeout :传输或接收的延时。大于这个时间SERVER 会断开这个链接。
    KeepAlive :(on or off)是否允许一个链接同时发出多的请求。
    KeepAliveTimeout :(default is 15)等待下一个请求的时间。
    MaxClients :(default is 150)允许的最大客户个数。
    通常上面的参数的默认值是不用改的,但是如果你同时在一台机子上开几个WEB SERVER 时要注意。第一,你要给每一个WEB SERVER 分配不同的port 号。第二,要分别指定他们的errorlog文件和pidfile文件。第三,不懂的参数不要随意改动,即使改动也要一次改一个,并留有记录以便恢复。
    2. /conf/access.conf :
    主要是对目录的功能和访问的控制的设定。下面我针对默认的页面的配置文件进行说明。该文件的位置是:/etc/httpd/conf/access.conf.
    该文件的第一段非注释部分如下:
    <Directory /home>
    Options Indexes IncludesNOEXEC
    AllowOverride None
    </Directory>
    大家注意到这一部分是以<Directory /home>开头,以</Directory>结束的。其中开头的部分<Directory /home>表示下面的设定是针对 /home 目录的。Options 这一命令有很多的参数,各参数的功能如下:
    All 所有的选项除了MultiViews功能。
    ExecCGI 开启执行CGI程序的功能。
    FollowSymLinks 开启一个动态的链接,当有客户访问到该目录时会自动
    的链接到另一个相关的目录中去。
    Includes 开启服务端的引用功能。
    IncludesNOEXEC 开启服务端的引用功能,但是#exec和CGI程序的引用将
    被禁止。
    Indexes 如果没有index.html文件在目录中,就会显示文件列表。
    SymLinksIfOwnerMatch 只有在链接的目标文件或目录与当前的目录属于同一用
    户时,才开启链接。
    接着是AllowOverride参数,该参数是设定访问控制的。这里把他设置成None,表示没有开启该功能。
    第二部分是:
    <Directory /home/httpd/html>
    Options Indexes Includes ExecCGI FollowSymLink
    AllowOverride None
    order allow,deny
    allow from all
    </Directory>
    第三部分是:
    <Directory /home/httpd/cgi-bin>
    AllowOverride None
    Options ExecCGI
    </Directory>
    表示对/home/httpd/cgi-bin 不进行访问控制,允许执行CGI程序。这就表明这是一个用来存放CGI程序的目录

    3. /conf/srm.conf
    主要是用来指定你的文档的位置。
    第一个参数是:DocumentRoot 。用来指定主文档的地址。
    第二个参数是:UserDir 。用来指定个人主页的位置。如果你有一个用户的home目录为 /home/jon 当在URL中输入 http://yourdomain/~jon 系统就会到 /home/jon/X/中去取这个用户的个人主页。其中X为UserDir 所指定的目录。
    第三个参数是:DirectoryIndex。用来声明查找的索引文件的名称。
    其他的不改也无防。通常用到的就是上面的几个选项。

    具体示例
    需要建立一个开机启动的web server。假定你的文档目录为/home/jon/html。
    首先,更改/etc/httpd/conf/access.conf文件的内容。将原文档的目录更改为新的文档目录。
    例如如下的更改:

    <Directory /home/httpd/html> ? <Directory /home/jon/html>
    Options Indexes Includes ExecCGI FollowSymLink
    AllowOverride None
    order allow,deny
    allow from all
    </Directory>
    <Directory /home/httpd/cgi-bin> ? <Directory /home/jon/cgi-bin>
    AllowOverride None
    Options ExecCGI
    </Directory>
    如上做相应的更改,注意 /home/jon/cgi-bin为你的cgi程序的目录。
    接着,修改 /etc/httpd/conf/srm.conf文件。
    将DocumentRoot /home/httpd/html 改为DocumentRoot /home/jon/html
    最后,修改 /etc/httpd/conf/httpd.conf文件。
    将ServerName 这一个参数后面的原来的内容替换为你的本机ip地址或主机名,同时去掉前面的注释符 “#”。这里的配置为:
    ServerName jon (jon 为我的主机名)
    从新启动httpd进程:
    #/etc/rc.d/init.d/httpd restart
    这样就做好了所有的配置,用你的Xwindows下的netscape浏览器在URL中输入你的主机名、本机的IP地址或localhost,就可以看到自己的主页了。要注意的是你的文档目录中必须有index.html文件,而且你的超文本文件的后缀名必须是.html。只要没有改错 httpd.conf 、srm.conf、 access.conf这三个文件,且httpd进程启动时没有报措,一般是不会有问题的。

    字体:
     
    设为主页 收藏本站 联系我们 友情连接 商务合作 网友留言
    Copyright©2006-2008 中华网络安全联盟 All rights reserved.