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命令获取各种配置选项及含义。

注意:这里,分别使用&&来连接makemake install,表示配置、编译、安装这三个配置过程按照顺序自动执行。

 

技术分享

确认安装结果

主要子目录的用途:

bin:存放httpd服务的各种执行程序文件,包括主程序httpd、服务控制工具apachectl

conf:存放httpd服务的各种配置文件,包括主配置文件httpd.con、增强配置子目录extra

htdocs:存放网页文档,包括默认首页文件indexhtml

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     服务识别参数,在级别35中启动;启动和关闭的顺序分别为8521

# description:  服务描述信息


技术分享

httpd添加为系统服务


技术分享

查看httpd服务的自启动状态

 

2.构建基于域名的虚拟web主机

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

DNS服务器中添加benet.comaccp.com两个域,并配置区域文件,能够正确解析www.benet.comwww.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网站服务的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统基础知识(13)Web网站服务管理

Linux Web服务器网站故障分析常用的命令

小迪安全web学习笔记

Linux Web服务器网站故障分析常用的命令

在Linux系统中搭建Nginx网站服务

网站发布(项目上线流程)