当前位置:文档之家› Apache(https)配置手册

Apache(https)配置手册

Apache(https)配置手册
Apache(https)配置手册

Apache(https)配置手册

拟制:tipyluo 日期:yyyy/mm/dd 审核:日期:yyyy/mm/dd 项目名称:项目经理:

深圳腾讯计算机系统有限公司

版权所有不得复制

修订记录

目录

1 概述 (4)

2 解决方案(原理) (4)

2.1 SSL握手协议和通讯 (5)

3 系统配置要求 (5)

3.1 硬件要求 (6)

3.2 软件要求 (6)

4 安装流程 (6)

4.1 安装前准备 (6)

4.2 执行安装 (6)

安装apache (6)

4.3 安装后验证 (7)

4.4 安装过程常见问题解决 (7)

5 系统配置 (7)

5.1 调整黙认选项 (7)

5.2 虚拟机配置 (7)

5.3 单向认证https配置 (8)

5.4 双向认证https配置 (11)

5.5 自建根证书 (12)

5.6 服务器证书签署 (12)

5.7 客户端证书签署 (13)

6 系统使用及维护 (13)

7 FAQ (13)

7.1 FAQ1-XXX (14)

8 参考资源 (14)

1概述

互联网技术的普及为人们的生活、工作带来了更多的便利,现在只要你有一台可以上网的电脑,那么足不出户,你只需要动一动鼠标就可以在家轻松实现网上购物、网上结汇帐务、网上股票交易等等原来需要耗费大量时间和精力并且要来回奔波才能完成的事情。

然而,我们在享受互联网技术给我们的生活和工作带来的便利的同时,是否想到在虚拟的网络世界中,我们在做每一次网上购物或是网上银行帐务查询时,我们如何保证我们所定的货物,使我们所需求的;我们汇出得钱款能够安全到达指定位置;我们的查询信息能够不被别人窃取。近年来,网上假冒网站进行欺诈的行为已经发生了多起,假冒交易或会员网站,骗取用户资料,假冒银行的网站,盗取用户帐户的事件;更由甚者,在发生自然灾难的时候,假冒慈善网站骗取钱财,可以说恶劣至极。

作为网站的提供方,出发点是为了方便用户,同时在展现自己企业风采的同时,降低与用户沟通的成本然而,假冒网站却给网站的提供者和使用者,都提出以下安全问题,需要认真对待解决:?网站的真实性:用户访问网站时需要确认网站的真实性,由于互联网的广泛性和开放性,使得互联网上存在很多虚假的网站,如何让用户信任自己访问的网站。

?信息的机密性:现在大量的网上应用需要用户向应用服务器提交一些隐私及机密信息,同时应用服务器也可能向用户返回一些隐私及机密信息,如何确保这些信息的安全。

这些问题即是此文档要着重讨论及解决的问题。

2解决方案(原理)

网站安全认证架构图

1.采用网站安全认证解决方案,通过为网站配置服务器证书(通过CA机构认证签发),可以为

网站提供安全、可靠的身份认证方案,用户通过验证网站的服务器证书来判断网站的真实

性;

2.通过配置服务器证书将在客户端和服务器之间建立安全通道,确保客户端和服务器之间数

据传输的安全;

3.通过扩展,服务器可以启用双向认证的连接,服务器可以要求客户端提供用户证书,

来判断用户的真实身份。

2.1SSL握手协议和通讯

为了便于更好的认识和理解SSL 协议,这里着重介绍SSL 协议的握手协议。SSL 协议既用到了公钥加密技术又用到了对称加密技术,对称加密技术虽然比公钥加密技术的速度快,可是公钥加密技术提供了更好的身份认证技术。SSL 的握手协议非常有效的让客户和服务器之间完成相互之间的身份认证,其主要过程如下:

①客户端的浏览器向服务器传送客户端SSL 协议的版本号,加密算法的种类,产生

的随机数,以及其他服务器和客户端之间通讯所需要的各种信息。

②服务器向客户端传送SSL 协议的版本号,加密算法的种类,随机数以及其他相关

信息,同时服务器还将向客户端传送自己的证书。

③客户利用服务器传过来的信息验证服务器的合法性,服务器的合法性包括:证书是

否过期,发行服务器证书的CA 是否可靠,发行者证书的公钥能否正确解开服务器证书的“发行者的数字签名”,服务器证书上的域名是否和服务器的实际域名相匹配。如果合法性验证没有通过,通讯将断开;如果合法性验证通过,将继续进行第四步。

④用户端随机产生一个用于后面通讯的“对称密码”,然后用服务器的公钥(服务器

的公钥从步骤②中的服务器的证书中获得)对其加密,然后将加密后的“预主密码”传给服务器。

⑤如果服务器要求客户的身份认证(在握手过程中为可选),用户可以建立一个随机数

然后对其进行数据签名,将这个含有签名的随机数和客户自己的证书以及加密过的“预主密码”一起传给服务器。

⑥如果服务器要求客户的身份认证,服务器必须检验客户证书和签名随机数的合法性,

具体的合法性验证过程包括:客户的证书使用日期是否有效,为客户提供证书的CA 是否可靠,发行CA 的公钥能否正确解开客户证书的发行CA 的数字签名,检查客户的证书是否在证书废止列表(CRL)中。检验如果没有通过,通讯立刻中断;如果验证通过,服务器将用自己的私钥解开加密的“预主密码”,然后执行一系列步骤来产生主通讯密码(客户端也将通过同样的方法产生相同的主通讯密码)。

⑦服务器和客户端用相同的主密码即“通话密码”,一个对称密钥用于SSL 协议的安

全数据通讯的加解密通讯。同时在SSL 通讯过程中还要完成数据通讯的完整性,防止数据通讯中的任何变化。

⑧客户端向服务器端发出信息,指明后面的数据通讯将使用的步骤⑦中的主密码为对

称密钥,同时通知服务器客户端的握手过程结束。

⑨服务器向客户端发出信息,指明后面的数据通讯将使用的步骤⑦中的主密码为对称

密钥,同时通知客户端服务器端的握手过程结束。

⑩SSL 的握手部分结束,SSL 安全通道的数据通讯开始,客户和服务器开始使用相同的对称密钥进行数据通讯,同时进行通讯完整性的检验。

3系统配置要求

3.1硬件要求

3.2软件要求

操作系统:Linux

http服务器:Apache/1.3.33

mod_ssl-2.8.22-1.3.33.tar.gz

openssl-0.9.7或以上

4安装流程

4.1安装前准备

下载以下软件包:

apache_1.3.33.tar.gz

mod_ssl-2.8.22-1.3.33.tar.gz

openssl-0.9.7f.tar.gz

4.2执行安装

安装apache

1.拷贝以上三个文件到/usr/local,并解压

tar zxvf apache_1.3.33.tar.gz

tar zxvf mod_ssl-2.8.22-1.3.33.tar.gz

tar zxvf openssl-0.9.7f.tar.gz

2.配置mod_ssl

cd mod_ssl-2.8.22-1.3.33

./configure --with-apache=../apache_1.3.33

3.设置ssl的基本路径

cd ../apache_1.3.33

SSL_BASE=../openssl-0.9.7f

4.配置apache

./configure --prefix=/usr/local/apache --enable-module=ssl --enable-shared=ssl 5.编译/安装apache

make

make install

6.编译openssl

./config --prefix=/usr/local/openssl

make

make install

4.3安装后验证

1.检查目标目录是否已创建:

/usr/local/apache

/usr/local/openssl

2.检查mod_ssl插件是否已生成

/usr/local/apache/libexec/libssl.so

3.启动apache,检查是否可以访问

cd /usr/local/apache/bin

./apachectl startssl

4.4安装过程常见问题解决

问题1-名称

5系统配置

5.1调整黙认选项

根据公司安全中心拟订的《Apache安全checklist.doc》手册为参考,调整系统的黙认配置。

5.2虚拟机配置

这里说的虚拟主机是指在一台机器上仅运行一个httpd后台程序支持多个Apache 服务器,如在公司某部门有一台web服务器,名为https://www.doczj.com/doc/569763073.html,,同时又想为另一个部门建立网站,网站内容也放在该机器上,通过https://www.doczj.com/doc/569763073.html,访问,这就要用到虚拟主机设置。

设置Apache虚拟主机通常有两种方案:

◆基于IP的虚拟主机

这种方式需要在机器上设置IP别名,象上面的例子,在一台机器的网卡上绑定多个IP地址去服务多个虚拟主机。

◆基于名字的虚拟主机

它的优势就是不需要更多的IP地址,容易配置,不需要其它软硬件,现代的浏览器大多都支持这种方式。

添加基于名字的虚拟主机步骤如下:

1 修改httpd.conf,在最后添加以下配置

# NameVirtualHost 必须加在所有虚拟机配置之前

NameVirtualHost 192.168.3.180

# 虚拟机一配置

ServerAdmin webmaster@https://www.doczj.com/doc/569763073.html,

DocumentRoot /usr/local/ oiweb_test_account/htdocs/

ServerName https://www.doczj.com/doc/569763073.html,

ScriptAlias /cgi-bin/ "/usr/local/oiweb_test_account/cgi-bin/"

ErrorLog logs/int_qq-error_log

CustomLog logs/int_qq-access_log common

ServerAdmin tipyluo@https://www.doczj.com/doc/569763073.html,

DocumentRoot /usr/local/oiweb_test_sales/htdocs/

ServerName https://www.doczj.com/doc/569763073.html,

ScriptAlias /cgi-bin/ "/usr/local/oiweb_test_sales/cgi-bin/"

ErrorLog logs/int_qq-error_log

CustomLog logs/int_qq-access_log common

5.3单向认证https配置

首先在配置之前明白一些基本概念,

1.SSL所使用的证书可以是自建生成的,也可以通过一个商业性CA如Verisign签署证书。

2.证书的概念:首先要有一个根证书(可自建),然后用根证书来签发服务器证书和客户证书,

一般理解:服务器证书和客户证书是平级关系。在SSL必须安装根证书和服务器证书来认

证。

单向认证配置需要服务器公钥证书和证书对应的私钥,命名为server.crt和server.key(可改为其它名字)。

编辑httpd.conf,调整“…< /VirtualHost>”之间的内容:

# General setup for the virtual host

DocumentRoot "/usr/local/oiweb_test_www/htdocs"

ServerName https://www.doczj.com/doc/569763073.html,

ScriptAlias /cgi-bin/ "/usr/local/oiweb_test_www/cgi-bin/"

ServerAdmin root@https://www.doczj.com/doc/569763073.html,

ErrorLog /usr/local/apache/logs/error_log

TransferLog /usr/local/apache/logs/access_log

# SSL Engine Switch:

# Enable/Disable SSL for this virtual host.

SSLEngine on

# SSL Cipher Suite:

# List the ciphers that the client is permitted to negotiate.

# See the mod_ssl documentation for a complete list.

SSLCipherSuite

ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL

# Server Certificate:

# Point SSLCertificateFile at a PEM encoded certificate. If

# the certificate is encrypted, then you will be prompted for a

# pass phrase. Note that a kill -HUP will prompt again. A test

# certificate can be generated with `make certificate' under

# built time. Keep in mind that if you've both a RSA and a DSA # certificate you can configure both in parallel (to also allow

# the use of DSA ciphers, etc.)

SSLCertificateFile /usr/local/apache/conf/ssl.crt/server.crt

#SSLCertificateFile /usr/local/apache/conf/ssl.crt/server-dsa.crt

# Server Private Key:

# If the key is not combined with the certificate, use this

# directive to point at the key file. Keep in mind that if

# you've both a RSA and a DSA private key you can configure

# both in parallel (to also allow the use of DSA ciphers, etc.) SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/server.key

#SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/server-dsa.key # Server Certificate Chain:

# Point SSLCertificateChainFile at a file containing the

# concatenation of PEM encoded CA certificates which form the # certificate chain for the server certificate. Alternatively

# the referenced file can be the same as SSLCertificateFile

# when the CA certificates are directly appended to the server

# certificate for convinience.

#SSLCertificateChainFile /usr/local/apache/conf/ssl.crt/ca.crt

# Certificate Authority (CA):

# Set the CA certificate verification path where to find CA

# certificates for client authentication or alternatively one

# huge file containing all of them (file must be PEM encoded)

# Note: Inside SSLCACertificatePath you need hash symlinks

# to point to the certificate files. Use the provided

# Makefile to update the hash symlinks after changes.

#SSLCACertificatePath /usr/local/apache/conf/ssl.crt

#SSLCACertificateFile /usr/local/apache/conf/ssl.crt/ca-bundle.crt # Certificate Revocation Lists (CRL):

# Set the CA revocation path where to find CA CRLs for client

# authentication or alternatively one huge file containing all

# of them (file must be PEM encoded)

# Note: Inside SSLCARevocationPath you need hash symlinks

# to point to the certificate files. Use the provided

# Makefile to update the hash symlinks after changes.

#SSLCARevocationPath /usr/local/apache/conf/ssl.crl

#SSLCARevocationFile /usr/local/apache/conf/ssl.crl/ca-bundle.crl # Client Authentication (Type):

# Client certificate verification type and depth. Types are

# none, optional, require and optional_no_ca. Depth is a

# number which specifies how deeply to verify the certificate

# issuer chain before deciding the certificate is not valid.

#SSLVerifyClient require

#SSLVerifyDepth 10

# Access Control:

# With SSLRequire you can do per-directory access control based

# on arbitrary complex boolean expressions containing server

# variable checks and other lookup directives. The syntax is a

# mixture between C and Perl. See the mod_ssl documentation

# for more details.

#

#SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)/ \

# and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \

# and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \

# and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \

# and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20 ) \ # or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/

#

# SSL Engine Options:

# Set various options for the SSL engine.

# o FakeBasicAuth:

# Translate the client X.509 into a Basic Authorisation. This means that

# the standard Auth/DBMAuth methods can be used for access control. The # user name is the `one line' version of the client's X.509 certificate.

# Note that no password is obtained from the user. Every entry in the user

# file needs this password: `xxj31ZMTZzkV A'.

# o ExportCertData:

# This exports two additional environment variables: SSL_CLIENT_CERT and # SSL_SERVER_CERT. These contain the PEM-encoded certificates of the

# server (always existing) and the client (only existing when client

# authentication is used). This can be used to import the certificates

# into CGI scripts.

# o StdEnvVars:

# This exports the standard SSL/TLS related `SSL_*' environment variables.

# Per default this exportation is switched off for performance reasons,

# because the extraction step is an expensive operation and is usually

# useless for serving static content. So one usually enables the

# exportation for CGI and SSI requests only.

# o CompatEnvVars:

# This exports obsolete environment variables for backward compatibility

# to Apache-SSL 1.x, mod_ssl 2.0.x, Sioux 1.0 and Stronghold 2.x. Use this

# to provide compatibility to existing CGI scripts.

# o StrictRequire:

# This denies access when "SSLRequireSSL" or "SSLRequire" applied even

# under a "Satisfy any" situation, i.e. when it applies access is denied

# and no other module can change it.

# o OptRenegotiate:

# This enables optimized SSL connection renegotiation handling when SSL

# directives are used in per-directory context.

#SSLOptions +FakeBasicAuth +ExportCertData +CompatEnvVars +StrictRequire

SSLOptions +StdEnvVars

SSLOptions +StdEnvVars

# SSL Protocol Adjustments:

# The safe and default but still SSL/TLS standard compliant shutdown

# approach is that mod_ssl sends the close notify alert but doesn't wait for

# the close notify alert from client. When you need a different shutdown

# approach you can use one of the following variables:

# o ssl-unclean-shutdown:

# This forces an unclean shutdown when the connection is closed, i.e. no

# SSL close notify alert is send or allowed to received. This violates

# the SSL/TLS standard but is needed for some brain-dead browsers. Use

# this when you receive I/O errors because of the standard approach where

# mod_ssl sends the close notify alert.

# o ssl-accurate-shutdown:

# This forces an accurate shutdown when the connection is closed, i.e. a

# SSL close notify alert is send and mod_ssl waits for the close notify

# alert of the client. This is 100% SSL/TLS standard compliant, but in

# practice often causes hanging connections with brain-dead browsers. Use

# this only for browsers where you know that their SSL implementation

# works correctly.

# Notice: Most problems of broken clients are also related to the HTTP

# keep-alive facility, so you usually additionally want to disable

# keep-alive for those clients, too. Use variable "nokeepalive" for this.

# Similarly, one has to force some clients to use HTTP/1.0 to workaround

# their broken HTTP/1.1 implementation. Use variables "downgrade-1.0" and

# "force-response-1.0" for this.

SetEnvIf User-Agent ".*MSIE.*" \

nokeepalive ssl-unclean-shutdown \

downgrade-1.0 force-response-1.0

# Per-Server Logging:

# The home of a custom SSL log file. Use this when you want a

# compact non-error SSL logfile on a virtual host basis.

CustomLog /usr/local/apache/logs/ssl_request_log \

"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

对于单向认证的模式,从开发上来说与不使用https没有不同,不需要特殊处理。

5.4双向认证https配置

在此环境中,至少必须有三个证书:即根证书(ca.crt),服务器证书,客户端证书。在生成证书之前,一般会有一个私钥,同时用私钥生成证书请求,再利用证书服务器的根证来签发证书。

编辑httpd.conf,在上述的配置基础上作进一步改动,添加以下几项配置(取消注释):SSLCACertificateFile /usr/local/apache/conf/ssl.crt/ca.crt

SSLVerifyClient require

# 因为一个CA证书能够被另一个CA证书验证,所以可以形成一个CA证书链.

# 使用该指令可指定服务器验证用户证书时可以查找多少个CA证明.

SSLVerifyDepth 10

我们通常所指的双向认证是指的协议级的认证,由浏览器和web服务器自动完成。然而对于带证书访问我们网站的所有用户来讲,如果不作应用级的认证,发挥不出双向认证的特点。我们所指的应用级认证就是在业务处理的逻辑上加入对用户证书的认证,我们知道每个证书都有一个common name字段,这个字段通常保存用户的特有信息(比如姓名、域名等),通常要求二张不同的证书这个字段是不能相同的,那么我们就可以利用这个字段来作用户的认证。

完成协议认证后,在web服务器的当前会话中会多出一些环境变量,其中包含用户证书的相关信息,比如证书序列号(SSL_CLIENT_M_SERIAL)、公用名(SSL_CLIENT_S_DN_CN)等,利用这些信息和用户的登录信息的接口可以达到提升安全级别的功能。

5.5自建根证书

安装openssl后,在openssl下有一个CA.sh文件,就是利用此文件来签证,来签三张证书,然后利用这三张证书来布SSL服务器。

操作步骤如下:

1.创建工作目录,比如创建/home/tipyluo/crt(可自定义)。

2.将CA.sh文件copy至/home/tipyluo/crt目录

cp /usr/local/openssl/ssl/misc/CA.sh /home/tipyluo/crt/

3.自建根证书和私钥

./CA.sh -newca

运行CA.sh -newca,他会找你要CA需要的一个CA自己的私有密钥密码文件。如果没有这个文件?按回车会自动创建,输入密码来保护这个密码文件。之后会要你的一个公司信息来做CA.crt文件。最后在当前目录下多了一个./demoCA这样的目录../demoCA/private/cakey.pem就是CA的key文件啦,./demoCA/cacert.pem就是CA的crt 文件了。

Country Name (2 letter code) [AU]:CN

State or Province Name (full name) [Some-State]:GUANGDONG

Locality Name (eg, city) []:SHENZHEN

Organization Name (eg, company) [Internet Widgits Pty Ltd]:TENCENT

Organizational Unit Name (eg, section) []:OSS

Common Name (eg, YOUR name) []:CFT

Email Address []:tipyluo@https://www.doczj.com/doc/569763073.html,

有了一个根证书的私钥cakey.pem及一张根证书cacert.pem,现在就可以cacert.pem来给第三方签署签证了。

命令详解:

5.6服务器证书签署

1.生成服务器私钥(server.key)

openssl genrsa -des3 -out server.key 1024

2.生成服务器证书请求(server.csr)

Country Name (2 letter code) [AU]:CN

State or Province Name (full name) [Some-State]:GUANGDONG

Locality Name (eg, city) []:SHENZHEN

Organization Name (eg, company) [Internet Widgits Pty Ltd]:TENCENT

Organizational Unit Name (eg, section) []:OSS

Common Name (eg, YOUR name) []:https://www.doczj.com/doc/569763073.html,

Email Address []:tipyluo@https://www.doczj.com/doc/569763073.html,

Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:

An optional company name []:

3.拷贝server.csr重命名为newreq.pem

cp server.csr newreq.pem

4.签署证书,生成newcert.pem

./CA.sh –sign

5.重命名newcert.pem为server.crt

mv newcert.pem server.crt

执行以上步骤将生成4个文件(server.crt newreq.pem server.csr server.key),其中server.crt为服务器证书文件,server.key为证书对应的私钥文件。

5.7客户端证书签署

1.生成客户私钥

openssl genrsa -des3 -out client.key 1024

2.生成证书请求

openssl req -new -key client.key -out client.csr

3.签证

openssl ca -in client.csr -out client.crt

4.格式转换

openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.pfx

执行以上步骤将生成4个文件(client.crt client.csr client.key client.pfx),其中client.crt 为证书文件,client.key为证书私钥。

6系统使用及维护

7FAQ

7.1FAQ1-配置完成读取不到环境变量

比如在访问/usr/local/oiweb_mm/cgi-bin中的cgi时取不到环境变量,作对虚拟机增加如下配置:

SSLOptions +StdEnvVars

8参考资源

中国信息安全组织

https://www.doczj.com/doc/569763073.html,

天威诚信数字认证中心

https://www.doczj.com/doc/569763073.html,

中国openssl专业论坛

https://www.doczj.com/doc/569763073.html,/

Openssl官方网站

https://www.doczj.com/doc/569763073.html,/

Apache配置详解(最好的APACHE配置教程)

Apache配置详解(最好的APACHE配置教程) Apache的配置 Apache的配置由文件配置,因此下面的配置指令都是在文件中修改。 主站点的配置(基本配置) (1) 基本配置: ServerRoot "/mnt/software/apache2" #你的apache软件安装的位置。其它指定的目录如果没有指定绝对路径,则目录是相对于该目录。 PidFile log #第一个httpd进程(所有其他进程的父进程)的进程号文件位置。 Listen 80 #服务器监听的端口号。 ServerName #主站点名称(网站的主机名)。 ServerAdmin #管理员的邮件地址。 DocumentRoot "/mnt/web/clusting" #主站点的网页存储位置。 以下是对主站点的目录进行访问控制: Options FollowSymLinks AllowOverride None Order allow,deny Allow from all 在上面这段目录属性配置中,主要有下面的选项: Options:配置在特定目录使用哪些特性,常用的值和基本含义如下: ExecCGI: 在该目录下允许执行CGI脚本。 FollowSymLinks: 在该目录下允许文件系统使用符号连接。 Indexes: 当用户访问该目录时,如果用户找不到DirectoryIndex指定的主页文件(例如,则返回该目录下的文件列表给用户。

SymLinksIfOwnerMatch: 当使用符号连接时,只有当符号连接的文件拥有者与实际文件的拥有者相同时才可以访问。 其它可用值和含义请参阅: AllowOverride:允许存在于.htaccess文件中的指令类型(.htaccess文件名是可以改变的,其文件名由AccessFileName指令决定): None: 当AllowOverride被设置为None时。不搜索该目录下的.htaccess文件(可以减小服务器开销)。 All: 在.htaccess文件中可以使用所有的指令。 其他的可用值及含义(如:Options FileInfo AuthConfig Limit等),请参看: Order:控制在访问时Allow和Deny两个访问规则哪个优先: Allow:允许访问的主机列表(可用域名或子网,例如:Allow from 。 Deny:拒绝访问的主机列表。 更详细的用法可参看: DirectoryIndex #主页文件的设置(本例将主页文件设置为:,和) (2) 服务器的优化 (MPM: Multi-Processing Modules) apache2主要的优势就是对多处理器的支持更好,在编译时同过使用--with-mpm选项来决定apache2的工作模式。如果知道当前的apache2使用什么工作机制,可以通过httpd -l命令列出apache的所有模块,就可以知道其工作方式: prefork:如果httpd -l列出,则需要对下面的段进行配置: StartServers 5 #启动apache时启动的httpd进程个数。 MinSpareServers 5 #服务器保持的最小空闲进程数。 MaxSpareServers 10 #服务器保持的最大空闲进程数。 MaxClients 150 #最大并发连接数。 MaxRequestsPerChild 1000 #每个子进程被请求服务多少次后被kill掉。0表示不限制,推荐

(2020)(环境管理)WindowsApacheMysqlPHP环境的安装与配置图文教程经典整合版

(环境管理)WindowsApacheMysql PHP环境的安装与配置图文教程经典整合版

Windows+Apache2.2+Mysql5+ PHP5环境的配置整合版 所需文件: mysql-essential-5.1.48-win32.msi httpd-2.2.15-win32-x86-openssl-0.9.8m-r2.MSI php-5.2.6-Win32.zip PECL5.2.6 Win32 binaries.ZIP 配置要求: 1、将Apache+PHP+Mysql安装在E:\。 2、将网页文档文件改为:E:\Web。 Apache的安装: 1、运行httpd-2.2.15-win32-x86-openssl-0.9.8m-r2.MSI,界面如下:

单击“I accept the terms in the license agreement”之后再单击“Next”。

服务器信息可以按照默认配置,如果服务器的80端口没被其他服务器程序占据。可选“for All Users,on Port 80, as a Service—Recommended.”如果仅为当前用户使用,使用8080端口,手动启动,选择“only for the Current User, on Port 8080, when started Manually.”。单击“Next”。

“Typical”为默认安装,“Custom”为用户自定义安装。选择“Custom”,单击“Next”。 单击“Build Headers and libraries”,选择“This feature will be installed on local dirive.”

安装使用手册详细版

Phoenix安装与使用文档 作者:宋亚飞 2015年3月27日 目录 Phoenix安装与使用文档1 目录1 描述1 Phoenix安装2 1、下载Phoenix2 2、上传压缩包3 3、解压缩文件3 4、配置Phoenix3 5、修改权限3 6、验证是否成功3 Phoenix使用4 1、建表4 2、导入数据4 3、查询数据4 查询1、查询全部记录5 查询2、查询记录总条数5 查询3、查询结果分组排序5 查询4、求平均值6 查询5、多字段分组,排序,别名。6 查询6、查询日期类型字段6 查询7、字符串,日期类型转换6 4、Phoenix基本shell命令7 5、用Phoenix Java api操作HBase8 Phoenix支持11 描述 现有hbase的查询工具有很多如:Hive,Tez,Impala,Shark/Spark,Phoenix等。今天主要记录Phoenix。

phoenix,中文译为“凤凰”,很美的名字。Phoenix是由https://www.doczj.com/doc/569763073.html,开源的一个项目,后又捐给了Apache基金会。它相当于一个Java中间件,提供jdbc连接,操作hbase数据表。 但是在生产环境中,不可以用在OLTP中。在线事务处理的环境中,需要低延迟,而Phoenix在查询HBase时,虽然做了一些优化,但延迟还是不小。所以依然是用在OLAT中,再将结果返回存储下来。 Phoenix官网上,对Phoenix讲解已经很详细了。如果英语好,可以看官网,更正式一些。 Phoenix安装 1、下载Phoenix 下载地址:https://www.doczj.com/doc/569763073.html,/apache/phoenix/ phoenix与HBase版本对应关系 Phoenix 2.x - HBase 0.94.x Phoenix 3.x - HBase 0.94.x Phoenix 4.x - HBase 0.98.1+ 我目前测试使用版本概况: Hadoop2.2.0--HBase0.98.2 所以我可以用phoenix4.x。下载的压缩包为phoenix-4.3.0-bin.tar.gz

Apache服务器配置实验报告

在Linux下配置Apache服务器 一、实验目的 完成本次实训,将能够: ●配置基本的Apache服务器 ●配置个人用户Web站点。 ●配置虚拟目录别名功能。 ●配置主机访问控制。 ●配置用户身份验证功能.。 ●配置基于IP地址的虚拟主机. 二、实验环境 1、RedHat Linux4AS. 2、Apache 2.0 三、实验内容 1.配置基本的Apache服务器 2.配置个人用户Web站点。 3.配置虚拟目录别名功能。 4.配置主机访问控制。 5.配置用户身份验证功能.。 6.配置基于IP地址的虚拟主机。 四、实验要求 在Linux操作系统下配置Apache服务器。 五、注意事项 1.在修配置文件下注意区分大小写、空格。 2.在每次重新开机后都必须启动Apachec服务器。 3.在每次修改完主配置文件后保存起来,必须重启Apachec服务器,如果不重启会 导致配置无效,最终导致实验失败。 六、实验步骤 1、检测是否安装了Apache软件包: A、首先为服务器网卡添加一个固定的IP地址。 B、在Web浏览器的地址栏中输入本机的IP地址,若出现Test Page测试页面(该 网页文件的默认路径为var/www/html/index.html)如下图1所示就说明Apache 已安装并已启动。

另一种方法是使用如下命令查看系统是否已经安装了Apache软件包: [root@rhe14~]# rpm –aq | grep httpd Httpd-suexec-2.0.52-9.ent Httpd-manual-2.0.52-9.ent System-config-httpd-1.3.1-1 Httpd-devel-2.0.52-9.ent 出现以上内容表明了系统已安装Apache软件包。 2、安装Apache软件包 超级用户(root)在图形界面下选择“应用程序”|“系统设置”|“添加/删除应用程序”命令,选择“万维网服务器”软件包组,在单击“更新”按钮就可以安装与Apache相关的软件包。 3、Apache的基本配置 (1)打开终端输入[root@rhe14~]# /etc/rc.d/init.d/httpd start //启动Apache 或者 [root@rhe14~]# apachectl start //启动Apache [root@rhe14~]# apachectl stop //停止Apache服务 [root@rhe14~]# apachectl restart //重启Apache服务 [root@rhe14~]# apachectl configtest //测试Apache服务器配置语法(2)在httpd.conf将Apache的基本配置参数修改、将一些注释的语句取消注释,或将某些不需要的参数注释掉。 (3)将包括index.html在内的相关网页文件复制到指定的Web站点根目下(var/www/html/index.html) (4)重启httpd进程 (5) 在Web浏览器下输入配置的ip地址出现如下图2,那表明基本配置成功了:

Apache 安装图解

Apache安装图解

一、安装Apache,配置成功一个普通网站服务器 运行下载好的“apache_2.0.55-win32-x86”,出现如下界面: 出现Apache HTTP Server 2.0.55的安装向导界面,点“Next”继续

确认同意软件安装使用许可条例,选择“I accept the terms in the license agreement”,点“Next”继续

将Apache安装到Windows上的使用须知,请阅读完毕后,按“Next”继续 设置系统信息,在Network Domain下填入您的域名(比如:https://www.doczj.com/doc/569763073.html,),在Server Name下填入您的服务器名称(比如:https://www.doczj.com/doc/569763073.html,,也就是主机名加上域名),在Administrator's Email Address下填入系统管理员的联系电子邮件地址(比如:yinpeng@https://www.doczj.com/doc/569763073.html,),上述三条信息仅供参考,其中联系电子邮件地址会在当系统故障时提供给访问者,三条信息均可任意填写,无效的也行。下面有两个选择,图片上选择的是为系统所有用户安装,使用默认的80端口,并作为系统服务自动启动;另外一个是仅为当前用户安装,使用端口8080,手动启动。一般选择如图所示。按“Next”继续。]

选择安装类型,Typical为默认安装,Custom为用户自定义安装,我们这里选择Custom,有更多可选项。按“Next”继续 出现选择安装选项界面,如图所示,左键点选“Apache HTTP Server

2.0.55”,选择“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。点选“Change...”,手动指定安装目录。 我这里选择安装在“D:\”,各位自行选取了,一般建议不要安装在操作系统所在盘,免得操作系统坏了之后,还原操作把Apache配置文件也清除了。选“OK”继续。

Apache服务器的安装与配置

Apache服务器的安装与配置 一、安装Apache 双击可执行文件apache_1.3.33-win32-x86-no_src.exe,将Apache服务器软件安装至C:\Apache目录下。 二、设置C:\apache\conf\httpd.donf文件 修改Apache的核心配置文件c:\apache\conf\httpd.conf(说明一点:“#”为Apache的注释符号)。修改方法如下: 1、寻找到ServerName。这里定义你的域名。这样,当Apache Server运行时,你可以在浏览器中访问自己的站点。如果前面有#,记得删除它。 2、寻找到ServerAdmin。这里输入你的E-Mail地址。 (以上两条在安装时应该已经配置好了,所以不必改动,这里介绍一下,主要是为了日后的修改) 3、寻找到。向下有一句Options,去掉后面所有的参数,加一个All(注意区分大小写!A 大写,两个l小写。下同。);接着还有一句Allow Override,也同样去掉后面所有的参数,加一个All。 AllowOverride All Options All Order allow,deny Allow from all 4、寻找到DocumentRoot。这个语句指定你的网站路径,也就是你主页放置的目录。你可以使用默认的,也可以自己指定一个,但记住,这句末尾不要加“/”。此外注意,路径的分隔符在Apache Server里写成“/”。(将DocumentRoot "C:/apache/htdocs"改为DocumentRoot "C:/try") 5、寻找到DirectoryIndex。这就是你站点第一个显示的主页,在index.html的后面加入index.htm index.php index.php3 index.cgi index.pl。注意,每种类型之间都要留一空格!这里添加好了,以后就不用再麻烦了。 6、port(端口号),如果没安装IIS的话,就保持80不要变,否则,就要改一下(因为IIS的WEB服务占据了80),可以改成81等等。 三、Apache的手动启动和停止 Net start apache启动apache服务,Net stop apache停止apache服务。

LinuxApacheWeb服务器配置教程

LinuxApacheWeb服务器配置教程 Linux阿帕奇网络服务器配置教程 阿帕奇的主要特点 根据著名的万维网服务器研究公司进行的一项调查,全世界50%以上的万维网服务器使用阿帕奇,排名世界第一。 阿帕奇的出生非常戏剧化。当NCSA万维网服务器项目停止时,那些使用NCSA万维网服务器的人开始用他们的补丁来交换服务器,他们很快意识到有必要建立一个论坛来管理这些补丁。就这样,阿帕奇集团诞生了,后来这个集团在NCSA的基础上建立了阿帕奇。 阿帕奇的主要特点是: 。可以在所有计算机平台上运行; 。支持最新的HTTP 1.1协议; 简单而强大的基于文件的配置; 。支持通用网关接口CGI 。支持虚拟主机; 。支持HTTP认证; 。集成的Perl脚本编程语言; 。集成代理服务器; 。拥有可定制的服务器日志;。支持服务器端包含命令。支持安全套接字层。用户会话过程的跟踪能力;支持FastCGI。支持Java小服务程序。 安装Apache流程

安装Apache 接下来,我们将开始征服阿帕奇的漫长旅程。我们将一步一步地学习使用Apache,从介绍到掌握,通过需求的一步一步的例子。 系统需求 运行Apache不需要太多的计算资源。它运行良好的Linux系统有6-10MB的硬盘空间和8 MB的内存。然而,单独运行Apache可能不是您想要做的。更有可能的是,您希望运行Apache来提供WWW服务,启动CGI流程,并充分利用WWW所能提供的所有惊人功能。在这种情况下,您需要提供额外的磁盘空间和内存空间来反映负载要求。换句话说,它不需要太多的系统资源来启动WWW服务,但是它需要更多的系统资源来为大量的客户提供服务。获取软件 你可以呆在 错误日志命令用于指定错误日志文件名和路径。 命令格式:错误日志[日志文件名] 示例:错误日志/var/ srm.conf Srm.conf是一个资源配置文件,它告诉服务器您想在WWW站点上提供什么资源,在哪里以及如何提供这些资源。 DocumentRoot命令指定主文档的地址。 命令格式:文档根[路径] 示例:文档根目录/主页/ UserDir命令,用于指定个人主页的位置。如果你有一个用户测试,

apache服务配置

Apache 安装后启动然后配置即可.记得开启80 端口. iptables –I INPUT –p tcp –dport 80 –j ACCEPT 开启tcp 80 端口 apache 的配置文件: httpd.conf 路径: /etc/httpd/conf/httpd.conf DocumentRoot “/var/www/html”设置主目录的路径 DirectoryIndex index.html index.html.var 设置默认主文档,中间用空格格开 Listen 80 Listen 192.168.1.1:80 设置apache监听的IP地址和端口号,可添加多个 ServerRoot “/etc/httpd”设置相对根目录的路径(存放配置文件和日志文件) ErrorLog Logs/error_log 设置错误日志存放路径 CustomLog Logs/access_log combined (日志格式) 设置访问日志存放路径 如果日志文件存放路径不是以”/”开头,则意味着该路径相对于ServerRoot 的相对路径. ServerAdmin 邮箱地址{设置管理员的E-mail地址 ServerName FQDN名或IP地址{设置服务器主机名 由于Apache默认字符集为西欧(UTF-8),所以客户端访问中文网页时会出现乱码. 将语句“AddDefaultCharset UTF-8”改为“AddDefaultCharset GB2312”方可解决,不过要重新启动Apache服务. 修改完默认字符集后,客户端如需访问,要先清空浏览器的缓存.

创建虚拟目录,添加Alias语句即可 Alias /ftp “/var/ftp”Alias 虚拟目录名物理路径 Options Indexes 定义目录特性 AllowOverride None 一般这样写就行 Order allow,deny 设置访问权限 Allow from all 允许所有用户访问 要实现虚拟目录用户认证,首先要建立保存用户名和口令的文件 htpasswd -c /etc/httpd/mysecretpwd (文件名) text (用户) -c 选项表示无论口令文件是否已经存在,都会重新写入文件并删去原有内容.所以在添加第二个用户到口令文件时,就不需要使用-c 选项了. Alias /ftp “/var/ftp” AuthType Basic 设定认证类型,Basic最常用AuthName “This is a private directory. Please Login:”辛苦点,全背上吧. AuthUserFile /etc/httpd/mysecretpwd 定义口令文件路径Require user text(用户) 定义允许哪些用户可以访问

2-apache Apache_Web 服务器安装部署手册档

重要提示 Web服务器包括apache的安装部署和W AS7 Plugin安装部署两部分,如果的websphere应用服务器使用非集群模式,plugin则不需要安装,只需配置本文2.1章节内容,如果websphere 应用服务器使用群集模式,则需要按照本文2.2章节进行plugin安装配置。 1 Apache安装 Apache的安装和配置现在可以采用脚本自动化安装,脚本就是139ftp上的 apache_install_script.sh 请下载到web服务器中,并执行即可。 注意:在执行脚本安装前请确认web服务器的/opt/apache下没有安装过apache,并且web 服务器能上外网(能ping通https://www.doczj.com/doc/569763073.html,) 成功安装apache并测试通过后即可直接继续本文第二章节Was7 Plugin安装 在root下进行root进入方法#su 然后输入密码 1.1 准备安装 关闭系统自带的web服务: #chkconfig httpd off 在线安装gcc #yum install gcc cc 下载并解压安装程序: #cd ~/ #wget https://www.doczj.com/doc/569763073.html,/httpd/httpd-2.2.15.tar.gz #tar –zxvf httpd-2.2.15.tar.gz -C /usr/src Web 服务器安装部署手册 Page 4 of 21 1.2 安装Apache Web Server 进入源码目录: #cd /usr/src/httpd-2.2.15 编译源文件: #./configure //(安装到默认目录) 形成安装文件: #make 安装程序: #make install 1.3 验证安装 进入安装后目录: # cd /opt/apache/apache-2.2.15/bin 检查进程模式: #./apachectl –l Compiled in modules: core.c worker.c http_core.c mod_so.c 启动Apache Web Server:

Linux下Apache服务器的安装和配置

【实验8】Apache服务器的安装和配置 一、实验目的: 1.掌握Apache Web服务器的安装和配置。 2.使用虚拟主机在同一台服务器上架设多个网站。 二、【实验环境】 1.虚拟机软件VM Ware 6.0,Redhat Enterprise Linux虚拟机或光盘镜像文 件。 2.2台以上机器组成的局域网。 三、【实验原理】 (一)Apache服务简介 Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。 Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web 服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。 (二)虚拟主机 所谓虚拟主机,也叫“网站空间”就是把一台运行在互联网上的服务器划分成 多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的Internet服务 器(支持WWW、FTP、E-mail等)功能。一台服务器上的不同虚拟主机是各自 独立的,并由用户自行管理。 虚拟主机技术是互联网服务器采用的节省服务器硬体成本的技术,虚拟主机 技术主要应用于HTTP服务,将一台服务器的某项或者全部服务内容逻辑划分 为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬体资源。如果 划分是系统级别的,则称为虚拟服务器。

(三)Linux中虚拟主机的分类 1、基于IP地址的虚拟主机 如果某公司有多个独立的IP地址可用,那么可以用不同的IP地址来配置虚拟主机。 2、基于端口的虚拟主机 如果只有一个IP地址,但是要架设多个站点,可以使用端口来区分,每个端口对应一个站点。这样配置的话,用户在访问的时候必须在 URL中指明端口号才能访问相应的网站。 3、基于名称的虚拟主机 使用基于IP地址或者端口的虚拟主机,能够配置的站点数目有限,而使用基于名称的虚拟主机,可以配置任意数目的虚拟主机,而不需要 额外的IP地址,也不需要修改端口号。 四、实验步骤 本实验请勿使用【系统】→【管理】→【服务器设置】中的【HTTPD】工具来配置,否则后果自负! (一)Apache服务器的启动 1、测试是否已安装Apache服务器: [root@localhost ~]#rpm –qa httpd 2、启动Apache服务器: [root@localhost ~]#service httpd start (二)基于端口的虚拟主机的配置 1、在/etc/httpd目录中,建立一个名为vhostconf.d的子目录,用来存放虚拟 主机的配置文件。 2、在/var/www目录中,建立一个名为websites的子目录,用于存放网站源 文件;在website目录下再建立ipvhost1和ipvhost2文件夹,用于区分各 个站点。

windows Apache配置文件

. Apache 主要配置Network Domain、Server Name、Email地址(我依次填的是localhost、localhost、邮箱随意)以及Apache服务的占用端口,默认为80端口,你可以根据需要配置在其他端口,Apache的安装目录你可以使用默认目录或根据需要自行选择安装目录(我安装到D:\Apache)。 在完成apache服务的安装后,在游览器中输入http://localhost/,出现It’s work!字样,说明Apache服务安装成功了。 2. PHP 只要解压php-5.3.4-Win32-VC6-x86.zip并重名为文件夹为php到某个盘即可完成PHP 安装(我是将其解压复制到D盘目录下D:\php) 3. MySQL 点击Mysql安装程序自动安装,在此期间你可以根据需要选择Mysql数据库的安装目录(我安装到D:\MySQL),MySQL 安装完后会启动向导,你可以先取消,下一部的配置里有说。 三、配置 1. Apache(Apache配置文件httpd.conf在Apache安装目录下的conf文件夹里面) (1)默认Apache服务器执行WEB主程序的目录为Apache2.2/htdocs,所以当你的WEB主程序目录变更时,我们需要修改相应的Apache配置(我改到D:\localhost\htdocs),即用文本编辑软件打开httpd.conf 将 DocumentRoot "D:/Apache/htdocs" 修改为 DocumentRoot "D:/localhost/htdocs" 再把 修改为 (2)修改具体的index文件先后顺序,由于配置了PHP功能,当然需要index.php优先执行 找到 DirectoryIndex index.html 修改为 DirectoryIndex index.php index.html (3)使Apache支持PHP 找到 #LoadModule vhost_alias_module modules/mod_vhost_alias.so 在其下面增加如下内容(注意php的安装路径) LoadModule php5_module "d:/php/php5apache2_2.dll" PHPIniDir "d:/php" AddType application/x-httpd-php .php .html .htm 说明:我们在PHP目录下可以看到多个php5apache的DLL文件,由于我们使用的是Apache2.2.17,所以我们当然需要使用php5apache2_2.dll,接着指定PHP的安装目录以及执行的程序扩展名。 2. PHP(配置文件php.ini在PHP安装目录下) (1)把php.ini-development改名为php.ini,然后用文本编辑器修改php.ini,接下来的步骤都是在php.ini进行的。

AMP安装配置手册

Apache+mysql+php配置说明 1概述 §1.1前言 由于Bug管理系统bugfree需要安装在apache+mysql+php的运行环境,因此本手册专为bugfree系统搭建运行环境而准备.当然,除了少数几个地方特列外,完全可以用在搭建独立的apache+mysql+php环境。 本手册包括windows和linux(redhat)下的安装和配置,都已测试通过,对于unix 其他版本的配置请参照linux下的步骤做相应调整. §1.2说明 1.本手册假设windows下的基本安装目录为”D:\amp”,linux下的基本最终安装目录为/usr/local,linux下的程序存放目录/home/tool 2.linux下的安装都使用.tar.gz文件,解压基本步骤如下: 解压gz:gunzip tall.tar.gz 解包tar文件成目录:tar-xvf tall.tar 3.读者应该有基本的windows和linux使用经验,否则请先了解基本的操作. 4.安装时请按照手册的顺序安装,因为php安装时必须要求mysql与apache已经安装 5.源码安装的步骤和说明 ./configure--prefix=/usr/local/xxx(配置环境变量,生成makefile) make(编译源程序) make install(根据make的结果,完成程序的安装)

2Mysql安装配置 §2.1总体说明 本次采用mysql5 参考手册:https://www.doczj.com/doc/569763073.html,/doc/refman/5.1/zh/index.html 下载地址:https://www.doczj.com/doc/569763073.html,/downloads/ windows安装程序:mysql-5.0.22-win32.zip linux安装程序:mysql-5.1.23-rc-linux-i686-glibc23.tar.gz 验证安装是否成功:启动mysql mysql–u root–p能正常登录即安装正确 §2.2基本操作说明 进入mysql后的每个命令必须以’;’结束,’mysql’是客户端程序 1.linux下的启动和停止: 启动:/usr/local/mysql/bin/mysqld_safe--user=root& 停止:kill掉mysqld进程 2.登录:mysql–u root–p 远程登录:mysql-h ipaddress-u root-p 3.设置远程主机可访问: mysql如果需要客户端或者其他系统远程访问,需要设置远程主机的ip到 mysql的user表中,或者设置user的hostname为’%’,如: update user set host='%'where host='localhost'; flush privileges; 4.修改密码: mysql默认安装时管理员密码(root)为空,可通过命令修改: mysqladmin-u root password'new-password'( 格式:mysqladmin-u用户名-p旧密码password新密码 5.一个mysql包含多个数据库,可用’show databases;’查看,使用数据库 用’use databasename’如’use mysql’,修改表之前必须先use指定库,查看此数据库有那些表用’show tables’ 6.更详细的操作和说明请看<> §2.3Windows下的安装 Windows下安装比较简单,下载win32的安装包,默认安装即可.须注意下面几点: 1.安装目录:选择D:\amp\MySQL5,不必须修改默认目录只是方便管理 2.字符集:安装时为了bugfree的需要,选择’utf8’ 3.选择安装配置工具的安装,并设置管理员密码为’mysql’

Apache服务器配置技巧

1、如何设置请求等待时间 在httpd.conf里面设置: TimeOut n 其中n为整数,单位是秒。 设置这个TimeOut适用于三种情况: 2、如何接收一个get请求的总时间 接收一个post和put请求的TCP包之间的时间 TCP包传输中的响应(ack)时间间隔 3、如何使得apache监听在特定的端口 修改httpd.conf里面关于Listen的选项,例如: Listen 8000 是使apache监听在8000端口 而如果要同时指定监听端口和监听地址,可以使用: Listen 192.170.2.1:80 Listen 192.170.2.5:8000 这样就使得apache同时监听在192.170.2.1的80端口和192.170.2.5的8000端口。 当然也可以在httpd.conf里面设置: Port 80 这样来实现类似的效果。 4、如何设置apache的最大空闲进程数 修改httpd.conf,在里面设置: MaxSpareServers n 其中n是一个整数。这样当空闲进程超过n的时候,apache主进程会杀掉多余的空闲进程而保持空闲进程在n,节省了系统资源。如果在一个apache非常繁忙的站点调节这个参数才是必要的,但是在任何时候把这个参数调到很大都不是一个好主意。 同时也可以设置: MinSpareServers n 来限制最少空闲进程数目来加快反应速度。 5、apache如何设置启动时的子服务进程个数 在httpd.conf里面设置: StartServers 5 这样启动apache后就有5个空闲子进程等待接受请求。 也可以参考MinSpareServers和MaxSpareServers设置。 6、如何在apache中设置每个连接的最大请求数 在httpd.conf里面设置: MaxKeepAliveRequests 100 这样就能保证在一个连接中,如果同时请求数达到100就不再响应这个连接的新请求,保证了系统资源不会被某个连接大量占用。但是在实际配置中要求尽量把这个数值调高来获得较高的系统性能。 7、如何在apache中设置session的持续时间 在apache1.2以上的版本中,可以在httpd.conf里面设置: KeepAlive on KeepAliveTimeout 15 这样就能限制每个session的保持时间是15秒。session的使用可以使得很多请求都可以通过同一个tcp

Apache如何修改配置文件

Apache配置参考 1.什么是Apache ? 1.什么是Apache ? Apache,是一种开放源码的HTTP服务器,可以在大多数操作系统中运行,由于其多平台和安全性所以被广泛使用,是目前最流行的Web服务器软件之一。Apache 起初由Illinois 大学Urbana-Champaign 的国家高级计算程序中心开发,开始Apache只是作为Netscape网页服务器之外的选择。渐渐的,它开始在功能和速度上超越其它基于Unix的HTTP服务器。从1996年4月以来,Apache一直是Internet上最流行的HTTP服务器: 1999年5月它在57% 的网页服务器上运行;而到了2005年7月这个比例上升到了69%。Apache名称的由来是为了纪念美洲印第安人土著中的一支,因为这支土著拥有最高超的作战策略和无穷的耐性。 Apache HTTP Server2.什么是? Apache HTTP Server(也被称为Apache httpd)是Apache软件基金会创建的一个健壮的、工业级的、功能强大的、开放源代码的HTTP(Web)服务器。 二、httpd.conf中常用参数介绍 1.连接类参数 l TimeOut 服务器在断定请求失败前等待的时间,即接收和发送数据的超时时间。 【说明】 TimeOut参数用于设置Apache在等待以下三种事件的时间: u 接受一个GET请求耗费的总时间。 u POST或PUT请求时,接受两个TCP包之间的时间。 u 回应时TCP包传输中两个ACK包之间的时间。 还可以理解成Apache允许每次通过HTTP协议传输数据的最大时间。 l KeppAlive 启用HTTP持续作用。

php+mysql+apache环境配置手册

运行环境配置全过程 (Apache php mysql) 1.首先下载相关软件 Apache官方下载地址:httpd-2.2.17-win32-x86-no_ssl.msi,更多版本在这里; php官方下载地址:php-5.2.16-Win32-VC6-x86.zip,更多镜像下载地址,更多版本下载; mysql官方下载地址:mysql-essential-5.1.54-win32.msi,更多镜像下载地址,更多版本下载。 一、安装Apache,配置成功一个普通网站服务器 运行下载好的“httpd-2.2.17-win32-x86-no_ssl.msi”,出现如下界面: 出现Apache HTTP Server 2.2的安装向导界面,点“Next”继续

确认同意软件安装使用许可条例,选择“I accept the terms in the license agreement”,点“Next”继续

将Apache安装到Windows上的使用须知,请阅读完毕后,按“Next”继续

设置系统信息,在Network Domain下填入您的域名(比如:https://www.doczj.com/doc/569763073.html,),在Server Name下填入您的服务器名称(比如:https://www.doczj.com/doc/569763073.html,,也就是主机名加上域名),在Administrator's Email Address下填入系统管理员的联系电子邮件地址(比如:yinpeng@https://www.doczj.com/doc/569763073.html,),上述三条信息仅供参考,其中联系电子邮件地址会在当系统故障时提供给访问者,三条信息均可任意填写,无效的也行。下面有两个选择,图片上选择的是为系统所有用户安装,使用默认的80端口,并作为系统服务自动启动;另外一个是仅为当前用户安装,使用端口8080,手动启动。一般选择如图所示。按“Next”继续。] 选择安装类型,Typical为默认安装,Custom为用户自定义安装,我们这里选择Custom,有更多可选项。按“Next”继续

Apache服务器配置及安全应用指南

Apache服务器配置及安全应用指南 技术创新变革未来

Apache服务安全加固 一.账号设置 以专门的用户帐号和组运行Apache。 根据需要为Apache 创建用户、组 参考配置操作如果没有设置用户和组,则新建用户,并在Apache 配置文件中指定 (1) 创建apache 组:groupadd apache (2) 创建apache 用户并加入apache 组:useradd apache –g apache (3) 将下面两行加入Apache 配置文件httpd.conf中 检查httpd.conf配置文件。检查是否使用非专用账户(如root)运行apache 默认一般符合要求,Linux下默认apache或者nobody用户,Unix默认为daemon用户

Apache服务安全加固 授权设置 严格控制Apache主目录的访问权限,非超级用户不能修改该目录中的内容 Apache 的主目录对应于Apache Server配置文件httpd.conf的Server Root控制项中应为: 判定条件 非超级用户不能修改该目录中的内容 检测操作 尝试修改,看是否能修改 一般为/etc/httpd目录,默认情况下属主为root:root,其它用户不能修改文件,默认一般符合要求 严格设置配置文件和日志文件的权限,防止未授权访问。 chmod600 /etc/httpd/conf/httpd.conf”设置配置文件为属主可读写,其他用户无权限。 使用命令”chmod644 /var/log/httpd/*.log”设置日志文件为属主可读写,其他用户只读权限。 /etc/httpd/conf/httpd.conf默认权限是644,可根据需要修改权限为600。 /var/log/httpd/*.log默认权限为644,默认一般符合要求。

Apache 用户手册(中文版)

WWW WWW ! "#$%&'() *+,-./0123 4567!89% :;<=Linux>?@A WWW >B:4 $Internet! intranet $CD E WWW FGHIJK LM:NO;?@= v Ejk Gc2fg wmnxy zL ! " # $ !l{p|}=~Emn Nc 5 2 QR A xy /( mn) h @p48 Option F4 Override (!fg C srm.conf jkQ ?@ c.htacess2t mn xy) 45p ! /home/httpd/virtual/virtual1/ mn+C c index F>G! f index.html (! srm.conf f g) Q R m n ! $o FollowSymLinks 5 Symbolic Link ?mn¢ £g ¤¢¥pq|?@§¨fglEmn y?order allow deny Ga??

-?ˉ °± -?45pl{2U8 =(allow from all) :LM 3 W?@!?′μ w deny ?·! C zL %&' () () ?1 fg:oo?jk$C ??? I ?àá?>?@= ˉ pq?? lEjk?C?w a? LoadModule?AddModule ?@4?èH:é ê?L st:ì d Gí|1q ??í>?@= ˉ ! * lEfgGD httpd !8? QR>òó?2 I clEfg>?@=èH: httpd @ inetd òó )& lE -&??Lpqê? port ?D>&× E IP ?ù ú?port 80 G HTTP l EüY T??(! /etc/services ?@st)LM: àá Ea? `% ?wêúo ? ?? W?? 80 tè?1éê?? cT??&= + " # LM: ê? : ` "#Gì?í? W ?fg on? :% ? IP ?ùoX , - . - lE|G¨te:%rí|lE nobody3! /etc/passwd ? /etc/group {C>?@ = ! - /- :?@ ?tèe?ò?lE ` ò?ó?? 0 1 LM: ?f÷? ?( Cp> ù:L d=)¥?@ ?C #ú? ..... ˉ a?üü yt ??p?=??> = ...... ?ü p = :( #ProxyRequests On apache F?@N Proxy c 4>ê?=? (tips: ProxyRemote * http://remote.proxy.host:8080)

相关主题
文本预览
相关文档 最新文档