Linux系统的Web网站服务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统的Web网站服务相关的知识,希望对你有一定的参考价值。
实验要求:
1.编译安装httpd服务器
2.构建基于域名的虚拟web主机
3.部署AWStats分析系统
4.实现httpd服务的访问控制
1.编译安装httpd服务器
使用tar命令解包
配置、编译、安装
命令:./configure配置
选项:--prefix:指定httpd服务程序的安装路径
--enable-so:启用动态加载模块支持,使httpd具备进一步扩展功能的能力。
--enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护。
--enable-charset-lite:启动字符集支持,以便支持使用各种字符集编码的网页。
--enable-cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力。
可以执行”./configure --help”命令获取各种配置选项及含义。
注意:这里,分别使用”&&”来连接make和make install,表示配置、编译、安装这三个配置过程按照顺序自动执行。
确认安装结果
主要子目录的用途:
bin:存放httpd服务的各种执行程序文件,包括主程序httpd、服务控制工具apachectl等
conf:存放httpd服务的各种配置文件,包括主配置文件httpd.con、增强配置子目录extra等
htdocs:存放网页文档,包括默认首页文件index、html等
logs:存放httpd服务的日志文件
modules:存放httpd服务的各种模块文件
cgi-bin:存放各种CGI程序文件。
优化执行路径
注意:通过源码编译安装的httpd服务,程序路径并不在默认的搜索路径中,为了使该服务在使用时更加方便,可以为相关程序添加符号链接。例如:当执行”httpd -v”命令相当于执行”/usr/local/httpd/bin/httpd -v”命令。
添加httpd系统服务:
将apachectl脚本复制为/etc/init.d/httpd
修改配置文件httpd,在文件开头添加chkconfig识别配置。这三个选项含义:
#!/bin/bash 使用/bin/bash来解释执行
# chkconfig 服务识别参数,在级别3、5中启动;启动和关闭的顺序分别为85、21
# description: 服务描述信息
将httpd添加为系统服务
查看httpd服务的自启动状态
2.构建基于域名的虚拟web主机
在DNS服务器中添加benet.com和accp.com两个域,并配置区域文件,能够正确解析www.benet.com和www.accp.com
更改Web服务器的名称为www.benet.com
更改Web服务器的首选DNS服务器为192.168.1.3
为虚拟Web主机准备网站目录
为虚拟Web主机准备网页文档
创建独立的虚拟主机配置文件,减少对httpd.con文件的改动,方便配置内容的维护。
设置虚拟机主机监听地址
设置目录访问权限
Order allow,deny 仅允许
Allow from 地址,可以接IP地址、网络地址、主机名或域名 ”all”表示任意地址,即允许所有。
Order deny,allow 仅拒绝
deny from
虚拟主机的配置文件选项与httpd.conf主配置文件的配置项类似,这些配置项含义在附录中有详细介绍。
修改httpd.conf主配置文件,加载独立配置文件
启动httpd服务,可以先执行”httpd -t”检查配置是否正确。
在测试客户机上,配置真确的IP地址和DNS服务器就可以访问网站了。
补充:
基于IP地址的虚拟主机(例)
<VirtualHost 220.181.120.61>
DocumentRoot /var/www/html/bdqncn
ServerName www.bdqn.cn
……
</VirtualHost>
<VirtualHost 122.115.32.133>
DocumentRoot /var/www/html/jbitcn
ServerName www.jbit.cn
……
</VirtualHost>
基于端口的虚拟主机(例)
<VirtualHost 173.17.17.11:80>
DocumentRoot /var/www/html/accpcom
ServerName www.accp.com
… …
</VirtualHost>
[[email protected] ~]# vi /usr/local/httpd/conf/httpd.conf
… …
Include conf/extra/httpd-vhosts.conf
Listen 173.17.17.11:80
Listen 173.17.17.11:8353
3.部署AWStats分析系统
只需要将AWStats的软件包解压到/usr/local/目录下即可。
可以将其目录改名,方便输入。
借助awsatats_configure.pl脚本简化创建过程
指定httpd主配置文件的路径,配置脚本将自动查找并识别httpd服务的主配置文件,自动添加相关配置内容。
设置日志类型,将httpd服务器的日志记录格式改为”combined”,记录更加详细的web访问信息。
确认创建新的站点配置文件
指定要统计的目标网站名称
直接回车接受默认配置,接下来自动重启httpd服务
修改站点统计配置文件
(第50行)
指定要分析的web日志文件(这里分析www.benet.com网站的访问情况)
(第203行)
指定存放统计数据的目录
这个目录需要手动创建
使用awstats_uptateall.pl脚本,来更新所有站点的日志统计数据,系统会自动分析新增的日志内容,并将结果更新到统计数据库中。
因为,web日志内容不断更新,所以可是设置任务计划,自动执行该任务。
在测试客户机上,访问该域名,既可以查看到指定网站的访问统计信息。该网站并不是所有人都能登录的,所以要设置访问控制。
4.实现httpd服务的访问控制
创建用户认证数据文件
工具程序:htpasswd用于创建授权用户数据文件,需要指定用户数据文件的位置。
选项:-c表示新建文件,省略”-c”表示向原有数据文件添加新用户或修改现有用户。
这里,新建的数据文件是”.awspwd”,用户名是”webadmin”。
修改主配置文件,添加用户授权配置。
Directory 指定了需要添加授权配置的网站的站点(更改路径从而针对不同的网站)。
Authname 定义受保护领域的名称,在浏览器弹出的认证对话框中显示。
Authtype 设置认证类型,basic表示基本认证。
Authuserfile 设置用户保存用户账号、密码的认证文件路径。
Require valid-user 表示只有认证文件中的合法用户才能访问,若之授权给单个用户,使用命令:”require user 用户名”
重启服务使配置生效
可以发现,再次访问awstats系统时,需要输入用户名和密码。
本文出自 “网络技术” 博客,请务必保留此出处http://fjc365.blog.51cto.com/11891287/1871125
以上是关于Linux系统的Web网站服务的主要内容,如果未能解决你的问题,请参考以下文章