阿帕奇服务器配置方案_第1页
阿帕奇服务器配置方案_第2页
阿帕奇服务器配置方案_第3页
阿帕奇服务器配置方案_第4页
阿帕奇服务器配置方案_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、apach服务器配置大全 (1)2011-09-16 23:02:00aaahackbaseaaa来源:互联网一、资料参考与准备: Apache软件包的组成 /etc/bbbd/conf/*一、资料参考与准备:Apache软件包的组成/etc/bbbd/conf/*主配置文件位置/etc/rc.d/init.d/bbbd启动脚本/home/bbbd/htmlhtml文档的主目录/home/bbbd/html/manual/*html格式的帮助文档/home/bbbd/icons/*用在html网页中的图标文件/usr/sbin/*-/usr/sbin/htpasswd建立和更新apache用户

2、的程序-/usr/sbin/bbbdbbb服务器程序/var/log/bbbd/*日志文件主配置文件bbbd.conf的常用指令解释ServerType standalone#设置服务器的形式是单独启动(standalone),还是借由互联网络伺服程序inetd来启动。一般使用前者。ServerRoot /usr/local/apache#设置服务器的Home目录,用来存放服务器的设置文件、错误文件、记录文件。PidFile logs/bbbd.pid#程序启动时,把父进程bbbd的进程号(process id)存在这个文件中。这个文件名可以配合PidFile指令加以改变。ScoreBoard

3、File logs/apache_status#设置网络上WWW服务器一些执行程序的记录文件。#ResourceConfig conf/srm.conf#AccessConfig conf/access.conf#这两个文件的内容已经包含在bbbd.conf文件中了。Timeout 300#如果客户端300秒还没有连上,或者服务器300秒还没有传送数据到客户端,就会自动断线。KeepAlive On#设置是否支持续传功能。MaxKeepAliveRequests 100#设置支持续传功能的数目。数目越多则浪费的硬盘空间越多。设置为0则不止持续传。KeepAliveTimeout 15#如果该为

4、使用者在15秒后还没有向服务器发出要求,则他在不能续传。MaxRequestsPerChild 0#设置同时间内child process数目。TtesteadsPerChild 50#设置服务器使用进程的数目。#Listen 3000#Listen 8:80#允许使用其它的Port或IP访问服务器。此例中Port为3000,IP为8:80。#BindAddress *#设置Apache监听所有的IP,也可以具体的指定。#LoadModule anon_auth_module modules/ApacheModuleAuthAnon.dll#打开当前未激

5、活预定以的模块。#ExtendedStatus On#设置服务器产生的状态信息。Port 80#设置服务器使用的Port。ServerAdmin youyour.address#设置服务器管理者的E-Mail位置。#ServerName #服务器的主机名。如果你有固定的IP位置,则不需要设置。DocumentRoot /usr/local/apache/htdocs#设置存放站点html文件的目录。Options FollowSymLinksAllowOverride None#设置/目录的指令。具体地说明:Option:定义在目录内所能执行的操作。None:表示只能

6、浏览,FollowSymLinks:允许页面连接到别处,ExecCGI:允许执行CGI,MultiViews:允许看动画或是听音乐之类的操作,Indexes:允许服务器返回目录的格式化列表,Includes:允许使用SSI。这些设置可以复选。All:则可以做任何事,但不包括MultiViews。AllowOverride:加None参数表示任何人都可以浏览该目录下的文件。另外的参数有:FileInfo、AuthConfig、Limit。UserDir public_html#定义使用者存放html文件的目录。DirectoryIndex index.html#定义首先显示的文件。AccessF

7、ileName .htaccess#定义每个目录访问控制文件的名称。#CacheNegotiatedDocs定义代理服务器不要Cache你的页面。不建议使用。UseCanonicalName On#服务器使用ServerName指定的服务器名和Port指定的端口位置。二、安装与配置apache安装$ tar xvf bbbd-*.tar$ ./configure -prefix=PREFIX$ make Install$ make install常用关键配置vi /etc/bbbd/conf/bbbd.confListen 80Include conf.d/*.confServerRoot /

8、etc/bbbdDocumentRoot /var/www/htmlServerAdmin rootServerName 88:80用户认证假如某一目录下的文件如/home/ftp/pub需要做到用户认证创建认证用户htpasswd c /*/.password xuanfei创建认证组vi /*/.groupxuanfei-group:xuanfei xuanfei1一。 基本的Apache用户认证方法:在bbbd.conf中加入下面的行options indexes followsymlinksallowoverride authconfigorder allow,de

9、nyallow from all或者加到 /etc/bbbd/conf.d/ 新建个文件名为。conf结尾的配置文件Directory /home/ftp/pubOptions IndexesAllowOverride AuthConfigorder allow,denyallow from all/Directory用在目录/home/ftp/pub下放文件。htaccess,内容如下:authname shared filesauthtype basicauthuserfile /*/.passwordrequire valid-user#require group xuanfei-gro

10、up /接收组所以用户#requirre user xuanfei /接收xuanfei单个用户用随Apache来的程序htpasswd 生成文件/etc/.passwd,每行一个用户名:密码只要能提供正确的用户名和密码对,就允许登录访问,这是针对任何位置来的请求都要求提供用户名和密码认证。二。针对部分网段或位置要求认证。若公司LAN所在网段为/24,且有一防火墙专线接入Internet,内部网卡的位置为/32,则现在希望所有通过拨本地633通过防火墙上的apache反向代理向LAN上的另一WWW服务器访问时需要认证,而本地LAN上的用户不需认证。可以在

11、bbbd.conf中放入:Directory /home/ftp/pubOptions Indexes FollowSymLinksAllowOverride AuthConfigorder deny,allowdeny from /Directory且在/home/ftp/pub/.htaccess中放入:AuthName shared filesAuthType BasicAuthUserFile /etc/.passwdrequire valid-usersatisfy any三。对同一目录及其下的子目录有不同的权限,仅某些人可以存取一目录下的子目录。如有一目录/ho

12、me/ftp/pub/host,有三个用户user1,user2,user3都需要用户名和密码进入/home/ftp/pub,但仅user1,user2能进入/home/ftp/pub/host.则放下面的行到bbbd.confDirectory /home/ftp/pubOptions IndexesAllowOverride AuthConfigorder allow,denyallow from all/DirectoryDirectory /home/ftp/pub/hostOptions IndexesAllowOverride AuthConfigorder allow,denya

13、llow from all/Directory且看/home/ftp/pub/.htaccess为:AuthName shared filesAuthType BasicAuthUserFile /etc/.passwdrequire valid-user且看/home/ftp/pub/host/.htaccessAuthName shared filesAuthType BasicAuthUserFile /etc/.passwdAuthGroupFile /etc/.hostgrouprequire group manager且文件/etc/.passwd内容为:user1:passwd1

14、user2:passwd2user3:passwd3且文件/etc/.hostgroup内容为:manager: user1 user2虚拟目录#vi /etc/bbbd/conf.d/xuanfei.confAlias /xuanfei /home/xuanfei(设置虚拟目录属性)Options Indexes MultiViews(当没有主页时以是否显示文件及文件夹)AllowOverride NoneOrder allow,denyAllow from all虚拟主机设置简介:这里说的虚拟主机是指在一台机器上仅运行一个bbbd后台程序支持多个Apache服务器,如在公司财务部门有一台w

15、eb服务器,名为,同时又想为host部门建立网站,网站内容也放在该机器上,通过访问,这就要用到虚拟主机设置。设置Apache虚拟主机通常有两种方案一、基于IP的虚拟主机这种方式需要在机器上设置IP别名,象上面的例子,在一台机器的网卡上绑定多个IP位置去服务多个虚拟主机。若该机器的IP位置为(),首先你要设置IP别名(假设用作为其别名IP)。加下面的行到/etc/rc.d/rc.local,确保每次启动后自动运行。#/sbin/ifconfig eth0:0 netmask broadcast 10.45.

16、63.255 up#/sbin/route add -host eth0:0然后你需要设置/etd/bbbd/conf/bbbd.conf文件:ServerAdmin rootDocumentRoot /home/bbbd/ServerName ErrorLog /var/log/bbbd/TransferLog /var/log/bbbd/然后分别创建目录/home/bbbd/,/var/log/bbbd/,放相应的网站内容到目录/home/bbbd/下即可,并确保你内部的DNS指定的A记录到IP位置 。注:这种基于IP的虚拟主机有一个缺点,就是你需

17、要更多的IP位置去服务各自的虚拟主机,如果你仅仅有一个IP位置,那么你将可以考虑用基于名字的虚拟主机方案。二、基于名字的虚拟主机:它的优势就是不需要更多的IP位置,容易配置,不需要其它软硬件,现代的浏览器大多都支持这种方式。与基于IP的虚拟主机一样,你需要编辑文件/etc/bbbd/conf/bbbd.confNameVirtualHost ServerAdmin rootDocumentRoot /home/bbbd/ServerName ErrorLog /var/log/bbbd/TransferLog /var/log/bbbd/ServerAdmin rootDo

18、cumentRoot /home/bbbd/ServerName ErrorLog /var/log/bbbd/TransferLog /var/log/注: 你需要加NameVirtualHost 指示在最前面,下面依次为各个虚拟主机,为了让它工作,你需要把, 的DNS都指向IP位置上面的两种都将工作,如果是在外部网段,在互联网上提供WWW服务,你可能没有足够的真实IP位置来支持多个虚拟主机,便可用基于名字的虚拟主机方案,若是在内部网段上,你有较多的内部保留IP位置,将没有太大的区别。NameVirtualHost 4 ; 在这个IP位置接收虚拟主机的

19、服务ServerNameaaaxuanfei1aaaDocumentRoot /www/xuanfei1ServerNameaaaxuanfei2aaaDocumentRoot /www/xuanfei2三、基于端口的虚拟主机:ServerNameaaaxuanfei1aaaDocumentRoot /www/xuanfei1ServerNameaaaxuanfei2aaaDocumentRoot /www/xuanfei2此种方法应用相对没那么方便!所以相对应用也少点!不同之处就是要在其域名或者IP后面添加其端口。基于CGI的配置要让CGI程序能正常运作,必须配置Apache以允许CGI的执

20、行,其方法有多种。ScriptAliasScriptAlias指令使Apache允许执行一个特定目录中的CGI程序。当客户端请求此特定目录中的资源时,Apache假定其中文件都是CGI程序并试图运行。ScriptAlias指令形如:ScriptAlias /cgi-bin/ /usr/local/apache/cgi-bin/如果Apache被安装到默认的位置,默认的配置文件bbbd.conf中则会有上述配置。ScriptAlias指令定义了映射到一个特定目录的URL前缀,与Alias指令非常相似,两者一般都用于指定位于DocumentRoot目录以外的目录,其区别是ScriptAlias又多

21、了一层含义,即其URL前缀中任何文件都被视为CGI程序。所以,上述例子会指示Apache,/cgi-bin/应该指向/usr/local/apache/cgi-bin/目录,且视之为CGI程序。举例,如果有URL为bbb:/aaaexampleaaa/cgi-bin/test.pl的请求,Apache会试图执行/usr/local/apache/cgi-bin/test.pl文件并返回其输出。当然,这个文件必须存在而且可执行,并以特定的方法产生输出,否则Apache返回一个出错消息。ScriptAlias目录以外的CGI由于安全原因,CGI程序通常被限制在ScriptAlias指定的目录中,如

22、此,管理员就可以严格地控制谁可以使用CGI程序。但是,如果采取了恰当的安全方法措施,则没有理由不允许其他目录中的CGI程序运行。比如,你可能希望用户在UserDir指定的宿主目录中存放页面,而他们有自己的CGI程序,但无权存取cgi-bin目录,这样,就产生了运行其他目录中CGI程序的需求。用Options显式地允许CGI的执行可以在主服务器配置文件中,使用Options指令显式地允许特定目录中CGI的执行:Options +ExecCGI上述指令使Apache允许CGI文件的执行。另外,还必须告诉服务器哪些文件是CGI文件。下面的AddHandler指令告诉服务器所有带有cgi或pl后缀的文

23、件是CGI程序:AddHandler cgi-script cgi pl.htaccess文件.htaccess文件是针对目录进行配置的一种方法。Apache在提供一个资源时,会在此资源所在目录中寻找。htaccess文件,如果有,则使其中的指令生效。AllowOverride 指令决定了。htaccess文件是否有效,它指定了哪些指令可以出现在其中,或者根本不允许使用。为此,需要在主服务器配置中如此配置:AllowOverride Options在。htaccess文件中,需要如此配置:Options +ExecCGI以使Apache允许此目录中CGI程序的执行。从网络访问CGI程序,浏览器

24、中可能会发生四种情况:CGI程序的输出太好了!这说明一切正常。CGI程序的源代码或者一个POST Method Not Allowed消息这说明Apache没有被正确配置以执行CGI程序,重新阅读configuring Apache看看遗漏了什么。一个以Forbidden开头的消息这说明有权限问题。参考Apache error log和下面的文件的权限。一个Internal Server Error消息查阅Apache error log,可以找到CGI程序产生的出错消息Premature end of script headers。对此,需要检查下列各项,以找出不能产生正确bbb头的原因。文

25、件的权限记 住,服务器不是以你的用户身份运行的,就是说,在服务器启动后,拥有的是一个非特权用户的权限-通常是nobody或者www -而需要更大的权限以允许文件的执行。通常,给予nobody足够的权限以执行文件的方法是,对文件赋予everyone execute权限:基于PERL的配置先用perl -v命令检查是否已安装了perl, 如果不能出现版本号,先安装perl进入apache配置文件,如果要运行perl写的cgi程序,写上:ScriptAlias /cgi-bin/ cgi-bin所在目录,linux的cgi-bin目录默认在/var/www/cgi-bin/;如果要运行。pl文件,则

26、加上: AddHandler cgi-script .pl修改/etc/bbb/conf.d/perl.conf文件,将以下内容前的#号去掉Alias /perl /var/www/perlSethandler perl-scriptPerresponsehandler modperl:registryPerloptions+parseheadersptions+ExecCGI基于JSP的配置jakarta-tomcat-4.0下载位置:bbb://tomcat/安装步骤:JDK:1)将安装程序复制到 /usr/local目录下2)执行命令:./j2sdk-

27、1_4_2_01-linux-i586.bin解压后得到目录j2sdk-1.4.2_01,将目录名改为j2sdk-1.4.2,不然后面的操作会无效。3)依次执行下列命令:ln -s j2sdk-1.4.2 jdkln -s jdk/jre jre4)设置环境变量vi /etc/profile加入如下内容:export JAVA_HOME=/usr/local/jdkexport CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarPATH=$PATH:/usr/local/j2sdk1.4.2/bin5)测试JDK是否安装成功cd /

28、etcjavac如果出现关于javac的使用说明,表示安装成功。TOMCAT:1)将安装程序复制到 /usr/local目录下2)执行命令:tar -zxvf jakarta-tomcat-5.0.19.tar.gz解压后得到目录jakarta-tomcat-5.0.193)设置环境变量vi /etc/profile加入如下内容:export TOMCAT_HOME=foo/tomcat4)进入 /usr/local/jakarta-tomcat*/binvi shutdown.sh添加 export JAVA_HOME=/usr/jdkexport PATH=$PATH:$JAVA_HOME

29、/bin export CLASSPATH=$JAVA_HOME/lib执行:./startup.sh start启动tomcat服务器5)测试是否安装成功用浏览器浏览bbb:/localhost:8080如果出现tomcat的欢迎页面,表示安装成功。Apache和tomcat的整合安装和配置mod_jk2#cp etc/bbbd/conf.d/jk2.conf /etc/bbbd/conf.d/#cp usr/lib/bbbd/modules/* /usr/lib/bbbd/modules/#cp a usr/share/doc/mod_jk2/ /usr/share/doc/mod_jk2/#cp a var/w

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论