推广 热搜: 百度  搜索引擎  企业  可以  选择  使用  page 

apache简述

   日期:2024-12-31     作者:2l0g1    caijiyuan  
核心提示:Ngnix是我们在搭建网站过程中一个很重要的元素。提到Ngnix我们就不得不说说Apache,他和Ngnix有什么区别呢? Ngnix

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

参考

本文地址:http://ww.kub2b.com/tnews/3942.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类生活信息

文章列表
相关文章
最新动态
推荐图文
生活信息
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号