生活服务
apache简述
2024-12-31 15:39  浏览:64

Ngnix是我们在搭建网站过程中一个很重要的元素。
提到Ngnix我们就不得不说说Apache,他和Ngnix有什么区别呢

Ngnix第一次接触是在搭建一个项目框架的时候。
而Apache第一次接触是在维护一个项目的时候,这个项目是没有用到Ngnix的。

因为这些主要的是配置方法,对于底层实现现阶段不需要了解得那么深刻,所以,先对其配置文件作出分析,等以后有机会的话分析更深层次的地方。

服务器通常是linux系统的,所以,这个配置文件也主要是针对于Linux
主要目录和文件(通常而言,即通过rpm安装的
– 服务目录:/etc/httpd/
– 主配置文件:/etc/httpd/conf/httpd.conf
– 网页目录:/var/www/html/
– 服务脚本:/etc/init.d/httpd
– 执行程序:/usr/sbin/httpd
– 访问日志:/var/log/httpd/access_log
– 错误日志:/var/log/httpd/error_log

Apache服务目录结构说明
根目录

|– bin 程序命令目录
|– build
|– cgi-bin
|– conf 配置文件目录
|– error
|– htdocs 编译安装时站点目录
|– icons
|– include
|– lib
|– logs 默认日志文件存放包括错误日志(error_log)和访问日志(access_log) tail -f access_log可以随时看访问记录, 里面httpd.pid还会记录主进程号
|– man
|– manual
|– modules 模块目录 例如PHP MEMCACHE编译后的模块在这里面

[root@htdocs]# ls https://blog.csdn.net/zzg19950824/article/
bin启动文件目录说明

|– bin # apache服务的命令目录,类似的jmeter loadrunner webbench
| |– ab # http服务性能测试工具
| |– apachectl # apache启动命令
| |– apr-1-config
| |– apu-1-config
| |– apxs # http服务编译和安装扩展模块使用工具,在DSO方式模块编译时用到
| |– checkgid
| |– dbmmanage
| |– envvars
| |– envvars-std
| |– htcacheclean # 清理磁盘缓冲区的控制命令
| |– htdbm
| |– htdigest
| |– htpasswd # 建立和更新基本认证文件
| |– httpd # httpd为apache的控制命令程序
| |– httxt2dbm
| |– logresolve
| – rotatelogs # apache自带的日子轮询命令(cronolog生产环境使用比较多)。

conf配置文件目录

|– extra # 额外的apache配置文件目录 如:httpd-vhost.conf
| |– httpd-autoindex.conf
| |– httpd-dav.conf dav支持配置
| |– httpd-default.conf apache相关服务配置 如超时时间 保持连接时间
| |– httpd-info.conf
| |– httpd-languages.conf 语言支持
| |– httpd-manual.conf
| |– httpd-mpm.conf 服务器池管理,如apache模式配置 连接等
| |– httpd-multilang-errordoc.conf
| |– httpd-ssl.conf 支持SSL加密配置
| |– httpd-userdir.conf
| |– httpd-vhosts.conf 虚拟机配置文件
|– httpd.conf # apache主配置文件
|– magic
|– mime.types
|– original
| |– extra
| | |– httpd-autoindex.conf
| | |– httpd-dav.conf # dav支持配置
| | |– httpd-default.conf # 这个文件里配置的是apache的相关服务参数:超时时间、保持链接
| | |– httpd-info.conf
| | |– httpd-languages.conf # 语言支持
| | |– httpd-manual.conf
| | |– httpd-mpm.conf # 服务器池管理,也是优化apache的一个配置文件(apache的模式以及配置链接数,常用模式为worker模式和profork模式,默认porfork
| | |– httpd-multilang-errordoc.conf
| | |– httpd-ssl.conf # 提供apache ssl支持配置文件
| | |– httpd-userdir.conf
| | |– httpd-vhosts.conf # 虚拟机的配置文件
| |– httpd.conf

站点存放目录

total 4
-rw-r–r– 1 root root 44 Nov 21 2004 index.html

日志存放目录

logs # apache服务默认的日志路径,包括错误日志和访问日志
|– access_log # apache服务访问日志 tail -f命令可以查看网页用户访问的信息
|– cgisock.16406
|– error_log # apache服务的错误日志。如:apache服务启动故障
|– httpd.pid # httpd的pid文件,http进程启动后,会把所有进程的id号写到此文件

模块目录

-rw-r–r– 1 root root 543 May 6 2008 bind.html
-rw-r–r– 1 root root 11422 Jan 3 2012 bind.html.de

1.使用二进制安装
在定制程度和性能上要低于编译的版本,但是是最快速的安装方法

所有标准的Apache模块在二进制包中都有包含,因为他们是作为DSO模块进行编译的,用户只需要选择自己想要的模块,或者减少模块减少消耗

2.使用rpm或者deb格式安装

使用最广泛的两种包管理系统
(1)以Redhat为代表的rpm格式
(2)以Debian为代表的deb格式
(3)yum安装

(1)以Redhat为代表的rpm格式

rpm全称Red Hat Package Manager

安装步骤

(2)以Debian为代表的deb格式
(3)yum安装

配置多站点方式

1、将httpd.conf复制一个新的文件httpdNew.conf
2、将httpdNew.conf中的侦听端口改成未使用的自定义的端口。 Listen:8111
3、将httpdNew.conf中的网站目录 documentRoot “原绝对路径” 改成 documentRoot “新绝对路径”
4、将httpdNew.conf中的权限设置

1、httpd.conf在之前侦听端口的基础上,加上新侦听端口 Listen 8333.这样Apache有多个侦听端口
2、httpd.conf中加入虚拟主机支持。加入指令:NameVirtualHost *
3、找到 definition注释所在位置。加入指令

1、修改虚拟主机配置文件 X:Apache安装目录根目录confextrahttpd-vhosts.conf文件.加入配置

2、修改主配置文件X:Apache安装目录根目录confhttpd.conf。去掉#Include conf/extra/httpd-vhosts.conf前面的#号
3、修改主配置文件X:Apache安装目录根目录confhttpd.conf。加目录权限

4、重启对应的Apache服务

1,.加载重写模块。httpd.conf中找到#LoadModule rewrite_module modules/mod_rewrite.so,去掉#号
2、httpd.conf中找到AllowOverride None,改成 AllowOverride All (All表示整台服务器上都支持URL规则重写)
3、httpd.conf加入

4、重启Apache服务器并启动服务
5、在URL重写的网站目录下放一个.htaccess文件,文件名是.htaccess。如无此文件或此文件中没定义任何关于URL重写的规则,则重写不会生效。
6、在.htaccess中通过正则表达式映射需要伪静态的页面。URL正则表达式如下

可用于以下用途
1、http错误的自定义页。格式 Errordocument 错误代码 /目录名/名.扩展名
Errordocument 404 /errors/notfound.html
Errordocument 401 “你权限访问该页面!”
2、拒绝某IP的访问
order allow,deny
deny from 210.10.56.32
deny from 219.5.45.
deny from www.baidu.com
allow from all
3、保护.htaccess文档
4、Url转向(文档迁移,目录更改,显示友好易记的url)。格式
Redirect /旧目录/旧文档名 新文档名
Redirect 旧目录 新目录
5、更改默认主页
DirectoryIndex 新的缺省名
DirectoryIndex filename.html index.cgi index.pl default.htm
6、反盗链

启用CGI执行并使用Perl脚本

  • [1] 安装Perl.
  • [2] 默认情况下,在“/var/www/cgi-bin”目录下允许CGI。

可以使用Perl scripts放在目录下。然而,它下面的所有文件都被处理为CGI。

  • [3] 如果你想允许在其他目录中的CGI,配置如下。

例如,在“/var/www/html/cgi-enabled”中允许。

  • [4] 如果SELinux被启用,并且允许CGI在不是像上面[3]的默认目录下,更改规则如下。
  • [5] 创建一个CGI测试页面,并使用Web浏览器从客户端PC访问它。如果显示以下页面,说明配置正确。

配置httpd以使用PHP脚本

  • [1] 安装PHP.
  • [2] 创建一个PHP测试页面,并使用Web浏览器从客户端PC访问它。如果显示以下页面,它是确定。
  • [3] 创建phpinfo测试页,确认是都开启php支持

配置httpd以将Ruby脚本用作CGI

  • [1] 安装Ruby.
  • [2] 默认情况下,在“/var/www/cgi-bin”目录下允许CGI。

可以使用Perl scripts放在目录下。然而,它下面的所有文件都被处理为CGI。

  • [3] 如果你想允许在其他目录中的CGI,配置如下。

例如,在“/var/www/html/cgi-enabled”中允许。

  • [4] 如果SELinux被启用,并且允许CGI在不是像上面[3]的默认目录下,更改规则如下。
  • [5] Create a CGI test page and access to it from client PC with
    web browser. It’s OK if following page is shown.

启用CGI执行并使用Python脚本

  • [1] 安装python.
  • [2] 默认情况下,在“/var/www/cgi-bin”目录下允许CGI。

可以使用Perl scripts放在目录下。然而,它下面的所有文件都被处理为CGI。

  • [3] 如果你想允许在其他目录中的CGI,配置如下。

例如,在“/var/www/html/cgi-enabled”中允许。

  • [4] 如果SELinux被启用,并且允许CGI在不是像上面[3]的默认目录下,更改规则如下。
  • [5] Create a CGI test page and access to it from client PC with
    web browser. It’s OK if following page is shown.
4.6、支持Userdir ————- 启用userdir,用户可以使用此设置创建网站 - [1] 配置 httpd.
  • [2] 创建一个测试页,使用普通用户通过客户端PC与Web浏览器和访问它,如果显示以下页面,就是正确的

配置虚拟主机以使用多个域名。
以下示例在域名为[linuxprobe.org],虚拟域名为[virtual.host(根目录[/home/wang/public_html]]的环境中设置。
必须为此示例设置Userdir的设置

  • [1] 配置虚拟主机
  • [2]创建测试页并使用Web浏览器从客户端计算机访问它。如果显示以下页面,则是正确的
  • [3]如果访问测试时看不到相应页面,可通过下面命令进行测试

创建自己的SSL证书。但是,如果您使用您的服务器作为业务,最好购买和使用来自Verisigh的正式证书等。

[1] 配置SSL.

[2] 如果Firewalld正在运行,请允许HTTPS服务。 HTTPS使用443 / TCP

启用基本身份验证以限制特定网页的访问
[1]例如,在目录[/var/www/html/auth-basic]下设置基本身份验证设置。

限制特定网页上的访问,并使用OS用户通过SSL连接进行身份验证
[1] 创建证书,请参照上文所述。
[2] 例如,在[/var/www/html/auth-pam]目录下设置Basic Auth。

下面是使用SSL连接配置WebDAV设置的示例
[1] 创建证书,请参照上文所述
[2] 例如,创建一个目录[webdav],它使得可以仅通过SSL连接到WebDAV目录。

[3] 如果启用了SELinux,请更改以下规则。

[4] 这是PC上的WebDAV客户端的设置(Windows 10)。
下载“CarotDAV”,这是一个免费的WebDAV客户端,从以下网站⇒ http://www.rei.to/carotdav_en.html ,下载后,安装并启动CarotDAV,然后显示以下屏幕,单击“文件”按钮并选择“WebDAV”。

[9] 到webdav目录下创建测试目录和文件

转载自:http://blog.csdn.net/wh211212/article/details/52982917

参考

    以上就是本篇文章【apache简述】的全部内容了,欢迎阅览 ! 文章地址:http://ww.kub2b.com/tnews/3942.html
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 企库往资讯移动站 http://ww.kub2b.com/mobile/ , 查看更多   
最新文章
腾讯围棋(野狐)手机版最新版中国象棋手机版「腾讯围棋(野狐)手机版最新版」
中国象棋竞技版最新版是有着很多经典的象棋残谱的经典益智游戏,在这里解锁自己感兴趣的棋谱,不管是是和电脑竞技还是真人pk,都
小米手机掉水里了应该怎么处理手机掉水里怎么处理「小米手机掉水里了应该怎么处理」
在日常生活中,我们难免会遇到一些突发情况,比如小米手机不慎掉入水中。面对这种情况,如果处理不当,可能会导致手机严重损坏。
有钱人“买爆”上海豪宅,有楼盘卖出200亿!去年多个“10万+”豪宅“日光”
本文来源:时代财经 作者:陈泽旋图源:图虫创意有钱人仍在楼市发挥他们的“钞能力”。近日,来自上海的中高端改善型项目海玥黄
华为WatchGT3可以遥控拍照吗?华为WatchGT3遥控拍照介绍华为手机驱动「华为WatchGT3可以遥控拍照吗?华为WatchGT3遥控拍照介绍」
近日有些朋友询问能否用华为Watch GT 3远程控制拍摄照片?以下是相关说明。(注:以上为简化版文本)华为WatchGT3支持遥控拍照,
谱写中印尼命运共同体新篇章
王鲁彤 中国和印度尼西亚是隔海相望的好邻居、命运与共的好伙伴,两国友谊源远流长。古代海上丝绸之路曾将双方紧密联系在一起,
东京股市继续上涨
  新华社东京4月18日电(记者钱铮)受医药和生物相关股普遍上涨拉动,日本东京股市18日继续上涨。日经225种股票平均价格指数收
如何有效格式化手机以清理存储空间和提升性能手机格式化是什么意思「如何有效格式化手机以清理存储空间和提升性能」
  在现代社会,手机已经成为我们生活中不可或缺的一部分。随着时间的推移,手机中的数据会逐渐增多,可能会导致设备运行缓慢,
如何快速关闭手机勿扰模式?详细步骤解析!手机勿扰模式在哪里「如何快速关闭手机勿扰模式?详细步骤解析!」
如何在Android手机上关闭勿扰模式 通过快捷设置关闭:用户可从屏幕顶部向下滑动以打开通知面板,接着找到“勿扰模式”图标(通常
microsd卡是什么卡手机sd卡是什么「microsd卡是什么卡」
  microsd卡是什么卡,很多人都有这样的疑问吧?下面就让我来为大家介绍一下吧!microsd卡是什么卡?  其实,MicroSD卡是一种
名茶汇聚的安徽,何以大而不强?
01为何名茶多,但名企少、名牌也少?说起安徽茶叶,大家第一印象是名优茶多,但这并不意味着龙头企业、知名品牌也多。中国十大名