linux杂谈(二十):apache服务配置


1.apache简介
?
?我们经常要浏览网页,提供这样的服务是apache。提供apache服务的软件是httpd服务。
?
?Apache支持許多特性,大部分通过编译的模块实现。這些特性從伺服器端的程式語言支援到身份認證方案。一些通用的语言接口支持Perl,Python,Tcl, 和PHP。流行的认证模块包括mod_access,mod_auth和mod_digest。其他的例子有SSL和TLS支持(mod_ssl),代理服务器(proxy)模块,很有用的URL重写(由mod_rewrite实现),定制日志文件(mod_log_config),以及过滤支持(mod_include和mod_ext_filter)。Apache日志可以通过网页浏览器使用免费的脚本AWStats或Visitors来进行分析。
?
?apache的服务配置是非常有讲究的,我们首先来提供服务,包括Perl、Python、PHP。最后在提供服务的基础上要实现它的安全性。
?
\
?
?上图就是我们apache服务器的一个基本架构。
?
?2.配置apache服务

?1)首先我们要来安装apache服务,安装文件是httpd:
?
?\
?
?还好,我们的httpd是已经安装了的。启动httpd服务,发现我们的主机名是需要修改的:
?
?\

?修改/etc/hosts文件,添加本机IP和域名之间的对照:
?
?\
?
?\
?
?再次启动之后,我们发现之前的提示已经不见了:

\
?
?服务终于启动了,我们的apache的默认发布目录是:/var/www/html,默认的发布文件是那个目录地下的index.html.
?
?我们先简单的写一个index.html文件(就在默认发布目录底下创建):
?
?\
?
?\
?
?我们可以看到这个文件对于任何人都是可读的:
?
?\
?
?接着我们来访问这个服务器:
?
?\
?
?呵呵,可是看不到所发布的内容。想想我们刚刚看到了权限是可读的,那问题应该是出在了防火墙上了。我们在没有涉及防火墙学习的情况下,先关闭它:
?
?\
?
?
?\
?然后重启httpd服务,再次访问本服务器:
?
?\
?
?再次访问:
?
?\
?
?这次就可以看到了。
?
?2.设置自己的默认发布目录
??
?有的时候我们并不想设置默认发布目录为:/var/www/html,如果要设置其他目录为默认发布目录,我们得修改httpd的配置文件:
?
?\
?
?我们修改httpd的默认发布目录为/www/html:
?\
?
?1)首先我们要创建这个目录,然后创建默认发布文件index.html:
?
?\
?
\
?
?重启httpd服务,然后查看默认发布内容(此时我们的防火墙已经关闭了):
?
?\
?
?\
?
?可以看到这个界面,记住,一旦出现这个问题。那就是selinux的权限不够,我们一定要对默认发布目录的安全上下文进行设置:
?
?首先我们要来安装一个可以修改安全上下文的软件:
?
?\
?
?修改/www/html的安全上下文:
?
?\
?
?查看/www/html的安全上下文,确实已经变为可以访问的安全上下文:
?
?\
?
?再次查看之后,我们已经可以看到默认发布的内容了:
?
?\
?
?上面的内容我们已经实现了httpd服务的默认发布目录的设定,并且实现了html内容的发布。但是对于权限和安全的方面考虑的问题不够多.我们可以对访问用户的身份进行设定从而避免非法用户的访问。
?
?1)假如我们只允许本机的访问。
?
?1.修改配置文件:
?
?\
?在这个Directory中,我们只允许了本机的IP进行访问。
?
?重启服务后用另外一台主机访问看看有什么结果:
?
?\
?
?然后本机的访问结果:
?
?\

?2)假如我们只允许本网段的用户访问。
?
?还是要修改配置文件:
?
?\
?
之后重启服务,本网段192.168.0.0/24的用户都可以对该apache访问.
?
?小结:
?
?本节讲解了apache服务的基本配置,对于加密和内外网的访问规则设置我们在以后的帖子中进行讲解。

相关内容