apache编译安装
A. apache没有安装文件怎么安装
有现成的web环境套件,例如想在Windows中运行apache,可以选择wamp环境套件,他包含apache、mysql、php,如果想在Linux系统中运行,最好选择编译安装方式,直接从apache网站下载源代码,通过mkae install来进行环境部署;
B. 编译安装的apache怎么用service启动
Apache安装后可通过其安装路径的bin目录下的apachectl脚本控制服务的启动和停止。本例中apache安装在/usr/local/apache-2.2.6,服务控制脚本为:
/usr/local/apache-2.2.6/bin/apachectl
执行下面的命令启动Apache服务:
/usr/local/apache-2.2.6/bin/apachectl start
执行下面的命令停止Apache服务:
/usr/local/apache-2.2.6/bin/apachectl stop
可以简单地把Apache启动命令加到/etc/rc.local文件,让Apache随系统启动而自动启动:
echo"/usr/local/apache-2.2.6/bin/apachectl start" >> /etc/rc.local
下面介绍如何把Apache加入到系统服务,用service命令来控制Apache的启动和停止。
首先以apachectl脚本为模板生成Apache服务控制脚本:
grep -v "#"/usr/local/apache-2.2.6/bin/apachectl > /etc/init.d/apache
用vi编辑Apache服务控制脚本/etc/init.d/apache:
vi /etc/init.d/apache
在文件最前面插入下面的行,使其支持chkconfig命令:
#!/bin/sh
# chkconfig: 2345 85 15
# description: Apache is a World Wide Webserver.
保存后退出vi编辑器,执行下面的命令增加Apache服务控制脚本执行权限:
chmod +x /etc/init.d/apache
执行下面的命令将Apache服务加入到系统服务:
chkconfig --add apache
执行下面的命令检查Apache服务是否已经生效:
chkconfig --list apache
命令输出类似下面的结果:
apache 0:off 1:off 2:on 3:on 4:on 5:on 6:off
表明apache服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用service命令控制Apache的启动和停止。
启动Apache服务:
service apache start
停止Apache服务:
service apache stop
执行下面的命令关闭开机自启动:
chkconfig apache off
执行下面的命令改变开机自启动的运行级别为3、5:
chkconfig --level 35 apache on
C. Linux编译安装apache httpd2.4 make报错
缺少pcre-8.41.tar.gz包,找一个pcre和你httpd对应得版本安装
./configure --prefix=/usr/local/pcre
make && make install
安装好了之后,加上参数--with-pcre=/usr/local/pcre 如下所示
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre
D. ubuntu 编译安装apache2怎么重启
步骤
首先,安装Apache2,安装命令:sudo apt-get install apache2
安装完成后,进入到/etc/apache2中(根据自己的实际安装目录),这边我配置文件在/etc/apache2中。
我们看到没有想象中的httpd.conf配置文件,这里要说明的是apache2的配置文件是apache2.conf,而不是http.conf。
打开apache2.conf。写入两条语句
ServerName localhost
DirectoryIndex index.html index.htm index.php
这里的ServerName localhost是为了防止最后开启apache2服务的时候会提示DNS出错。
DirectoryIndex index.html index.htm index.php是默认目录的写法。保存退出。
可以在apache2.conf中加入 AddDefaultCharset GB2312
设置默认字符集,定义服务器返回给客户机默认字符集(由于西欧UTF-8是Apache默认字符集,因此当访问有中文的网页时会出现乱码,这时只要将字符集改成GB2312,再重启Apache服务即可)
Listen 192.168.1.1:80 设置监听ip是192.168.1.1的地址和端口为80
Listen 192.168.1.2:8080 设置监听ip是192.168.1.2的地址和端口为8080
Alias /down "/sofТWare /download"
创建虚拟目录(创建名为down的虚拟目录,它对应的物理路径是:/sofТWare /download)
Alias /ftp "/var/ftp"
创建虚拟目录(创建名为ftp的虚拟目录,它对应的物理路径是:/var/ftp)
<Directory "/var/www/html">
设置目录权限
(<Directory "目录路径">此次写设置目录权限的语句</Directory>)
Options FollowSymLinks page:116
AllowOverride None
</Directory>
需要说明的是,在apache2中,根设置(默认主目录)在 /etc/apache2/sites-АVailable/default中,我们打开default,进行配置。
如图,这里我们的默认主目录设置的路径是/var/www,文档最上方的VirtualHost后方的*代表通配符,即表示所有本机ip地址,监听端口为80,ServerName填写你注册的域名,没有可以不填。保存退出。
4
至此,基本配置已经全部完成,查看本机ip地址。输入启用apache2的命令:/etc/init.d/apache2 restart.并在浏览器中输入本机ip地址。成功!
E. 编译安装apache遇到很多麻烦唉
实体机能ping通虚拟机嘛,它俩在一个网段嘛,如果互相能通信,web应该是可以访问的!
F. 编译安装的apache,httpd.pid在哪
/var/run/httpd/httpd.pid
看下httpd.conf的配置文件下,比如
grep pid /etc/httpd/conf/httpd.conf
find / -name httpd.pid
G. centos安装apache mysql php用YUM安装与编译安装有什么区别
YUM安装:需要连接网络,依赖库可以自动补全;
编译安装:自己下载安装包,依赖包要自己补
H. apache如何安装要非常详细
Apache是一个历史悠久并且功能十分强大的WEB服务器,但其丰富的功能对于一个新手来说往往不知道从何下手。我个人感觉Apache的设计充分体现了模块化设计的优势,通过在动态模块加载(DSO)模式下的安装,任何子应用模块都可以通过配置文件的简单修改进行积木式的灵活配置。安装的过程可以从简单的静态html服务开始,一个模块一个模块的学习使用。从单纯的HTML静态服务(core),到复杂的动态页面服务(core + php, core + resin, core + php + mod_gzip, core + resin + mod_expire)。
本文主要从简化安装==>性能调优==>维护方便的角度,介绍了WEB服务的规划、HTTPD安装/应用模块配置、升级/维护等过程。让Apache和PHP,Resin等应用模块的独立升级,完全互不影响。
WEB应用容量规划:根据硬件配置和WEB应用的特点进行WEB服务的规划及一些简单的估算公式;
Apache安装过程:apache的通用的简化安装选项,方便以后的应用的模块化配置;
修改 HARD_SERVER_LIMIT:
vi /path/to/apache_src/src/include/httpd.h
#define HARD_SERVER_LIMIT 2560 <===将原来的 HARD_SERVER_LIMIT 256 后面加个“0”
apache编译:
./configure --prefix=/home/apache --enable-shared=max --enable-mole=most
可选应用模块/工具的安装:php resin mod_gzip mod_expire及各个模块之间的配合;
mod_php安装:./configure --with-apxs=/home/apache/bin/apxs --enable-track-vars --with-mysql
mod_resin安装:./configure --with-apxs=/home/apache/bin/apxs
mod_gzip安装:修改Makefile中的 apxs路径:然后make make install
工具:日志轮循工具cronolog安装:http://www.cronolog.org
升级/维护:看看通用和模块化的安装过程如何简化了日常的升级/维护工作;
按照以上的方法:系统管理员和应用管理员的职责可以清楚的分开,互相独立。
系统安装:系统管理员的职责就是安装好一台DSO模式的Apache,然后COLON即可,
应用安装:由应用管理员负责具体应用所需要的模块,比如PHP Resin等,并设置httpd.conf中相关的配置。
系统升级:系统管理员:升级操作系统/升级Apache
应用升级:应用管理员:升级应用模块,PHP Resin等。
WEB应用的容量规划
Apache主要是一个内存消耗型的服务应用,我个人总结的经验公式:
apache_max_process_with_good_perfermance < (total_hardware_memory / apache_memory_per_process ) * 2
apache_max_process = apache_max_process_with_good_perfermance * 1.5
为什么会有一个apache_max_process_with_good_perfermance和apache_max_process呢?原因是在低负载下系统可以使用更多的内存用于文件系统的缓存,从而进一步提高单个请求的响应速度。在高负载下,系统的单个请求响应速度会慢不少,而超过 apache_max_process,系统会因为开始使用硬盘做虚拟内存交换空间而导致系统效率急剧下降。此外,同样的服务:2G内存的机器的 apache_max_process一般只设置到1G内存的1.7倍,因为Apache本身会因为进程过多导致性能下降。
I. 如何编译配置Apache中的Configure
./Configure文件是一个经常被遗忘的Apache工具。本文介绍如何用./Configure进行编译配置,避免每次编译Apache时进行重复的操作。文章比较了常规方法与使用./Configure这两者各自的优缺点以及如何手工编辑配制文件进行编译配置。 一、优缺点比较 我们知道,配制Apache编译选项使用的是configure。但除此之外,我们还可以使用Configure。注意两者的差别:常用的那个配制工具是小写c开头的“configure”,这里要讨论的“Configure”以大写的C开头。 解开Apache源代码之后,configure脚本位于顶级目录下面。一般我们按照如下步骤使用它: tar -zvxf apache_1.3.14.tar.gz cd apache_1.3.14 ./configure --prefix=/usr/local/apache make make install Configure是位于src子目录下的脚本。它的参数不是通过命令行指定,而是在一个名为Configuration的配置文件中指定。Apache提供一个默认的配置模板文件Configuration.tmpl,其中包含了通用的默认配置值。 用Configure进行默认安装的过程如下: tar -zvxf apache_1.3.14.tar.gz cd apache_1.3.14/src cp -f Configuration.tmpl Configuration vi Configuration ... 如必要,修改默认配置值 ./Configure make make install 缺点 用Configure进行配制有几个明显的缺点,至少对初学者来说是这样的。 首先,这种配制方法并不广为人知。只要是对开放源代码软件有所了解的人,解开源代码并进入它的目录之后,或许会对它的configure脚本感到熟悉,但往往不会进入src子目录去寻找其他什么东西。 即使知道可以用Configure进行编译配制,Configuration文件本身也可能成为小小的障碍。这是因为,虽然Configuration文件内部包含的说明相当完善,每一行都有丰富的注解说明其作用,但这个文件实在过于庞大,包含了许多大多数人永远不想要加以定制的选项。 最后,虽然有关这两种配制方法差别的资料略显缺乏,但总地看来初学者最好使用configure,而Configure只适合于经验丰富的用户使用。虽然这并不能算是一个真正的缺点,但它无疑使许多用户驻足而不敢尝试。 优点 使用Configure进行编译配制最大的优点在于,它方便了我们将特定的配置信息保存下来以后再用,无需记住冗长的configure命令行选项。 例如,本人上次编译Apache时使用的configure命令如下: ./configure --prefix=/usr/local/apache --enable-mole=most --enable-shared=max --enable-mole=auth_dbm --enable-mole=auth_mysql 这还应该算是一次比较简单的编译。问题在于,即使是输入上面这行命令,我也要查看各种参数的语法并努力记住各个模块的名字。对于大多数人来说这并不是一个很重要的问题,但由于我经常要重新构造Apache,这个问题就显得比较突出了。 configure也有它的好处,它实际上会在src目录下生成一个配制文件,我们可以保存这个文件供以后参考。这个文件就是src/Configuration.apaci。 如果我们为测试目的构造Apache,完成后又要在正式运行的系统上以完全相同的方式构造Apache,configure的这个功能将是非常有用的。此时,我们只需要复制一份Configuration.apaci文件,将它拷贝到正式运行的服务器上,然后用这个文件编译Apache服务器即可。 应当说明的是,虽然默认情况下配制选项由Configuration文件提供,但我们可以用-file参数指定另外的文件: ./Configure -file Configuration.saved_prefs 二、手工编辑配制文件 以前,指定编译选项的唯一方法是手工编辑Configuration文件。当然,那时候我们还要步行上学,跋山涉水。这一切现在都已经过去。 不管怎样,如果你准备直接使用Configuration文件,你就得仔细地了解一下它到底由什么内容构成。Configuration文件中的大多数选项都是无需定制的,不过了解一下它们的用处是有好处的。 Configuration文件的前面是关于本文件的一个简短说明。下面摘录了这部分内容并给出其译文: # There are 5 types of lines here: 这里共有5种类型的代码行: # &single;#&single; comments, distinguished by having a &single;#&single; as the first non-blank character “#”注释,以第一个非空字符为“#”区别 # # Makefile options, such as CC=gcc, etc... Make文件选项,例如 CC=gcc,等等... # # Rules, distinguished by having "Rule" at the front. These are used to # control Configure&single;s behavior as far as how to create Makefile. 规则,以前面的“Rule”区别,用于控制Configure的行为以至 如何创建Make文件 # # Mole selection lines, distinguished by having &single;AddMole&single; at the front. # These list the configured moles, in priority order (highest priority # last). They&single;re down at the bottom. 模块选择行,以前面的“AddMole”区别。这些行以优先级为序列出 了已经配制的模块(高优先级的在后面)。模块选择在文件最后进行。 # # Optional mole selection lines, distinguished by having `%Mole&single; # at the front. These specify a mole that is to be compiled in (but # not enabled). The AddMole directive can be used to enable such a # mole. By default no such moles are defined. 可选模块选择行,以前面的“%Mole”区别。这些行指定了必须 编译的模块(但不启用)。AddMole指令可以启用这种模块。默 认不定义这种模块。 大多数用户只需修改模块选择行,其他内容只适合于深入了解其含义的用户进行修改。在文件的最后我们可以发现许多如下形式的行: AddMole moles/standard/mod_cgi.o 它表示本次编译Apache应启用指定的模块(这里是mod_cgi模块)。我们可以用注释掉相应行的方法来删除特定的模块;反之,如果取消已注释行的注释将启用该模块。 我们可以通过SharedMole指令(而不是AddMole)将模块编译成DSO(共享对象,shared object): SharedMole moles/standard/mod_vhost_alias.so 注意在编译DSO时必须启用mod_so模块。 用configure生成Configuration.apaci文件,然后检查其改动之处是一种很好的学习方法。 一旦在Configuration文件中完成了所有必须的改动,只需运行./Configure即可开始编译过程。 三、使用哪种方法好? 显然,使用configure和使用Configure都有着各自强硬的支持者,但可以相信每一种观点都有其派别和历史的原因。 我们建议两种方法都用。用configure生成Configuration文件,阅读这些文件了解其作用,然后保存其中的部分文件供以后在Configure命令中使用。 如果你打算只进行默认安装,而且从来没有想到过要改变任何一个选项,那么使用哪一种方法进行配制就无关紧要了
J. apache2的Apache 的安装
Apache 的安装无外乎两种方式: 源代码安装和DEB包安装。这两种安装类型各有特色,DEB包安装不需要编译,而源代码安装则需要先配置编译再安装,DEB包安装在一个固定的位置下,选择固定的模块,而源代码安装则可以让你选择安装路径,选择你想要的模块。本文主要介绍DEB安装方式。
系统:GNU/Linux Debian/etch
Apache当前版本: 2.0.55-4
4.1 1. 安装:
使用以下命令安装:
tony@tonybox:~$sudo aptitude update
tony@tonybox:~$sudo aptitude install apache2 apache2-utils
其中apache2-utils提供了我们在配置维护过程中非常有用的一些工具
安装完成后,可以使用下面的命令启动Apache 服务:
tony@tonybox:~$ sudo /etc/init.d/apache2 start
停止Apache服务则是:
tony@tonybox:~$ sudo /etc/init.d/apache2 stop
也可以直接用 kill 命令强制杀死apache2进程
tony@tonybox:~$ sudo killall apache2
如有需要, 可以通过rcconf来控制是否在系统启动是加载Apache 服务
启动完成后打开浏览器, 使用URL http://localhost/ 来访问已经启动的Apache服务器, 服务器将会将会跳转到 http://localhost/apache2-default/, 向浏览器返回一个Apache安装成功的页面.
注: 这取决于/etc/apache2/sites-available/default 配置文件中, 是否取消了
RedirectMatch ^/$ /apache2-default/
行的注释
4.2 2. 配置文件说明
在Debian下, 安装完成后, 软件包为我们提供的配置文件位于/etc/apache2目录下:
tony@tonybox:/etc/apache2$ ls -l
total 72
-rw-r--r-- 1 root root 12482 2006-01-16 18:15 apache2.conf
drwxr-xr-x 2 root root 4096 2006-06-30 13:56 conf.d
-rw-r--r-- 1 root root 748 2006-01-16 18:05 envvars
-rw-r--r-- 1 root root 268 2006-06-30 13:56 httpd.conf
-rw-r--r-- 1 root root 12441 2006-01-16 18:15 magic
drwxr-xr-x 2 root root 4096 2006-06-30 13:56 mods-available
drwxr-xr-x 2 root root 4096 2006-06-30 13:56 mods-enabled
-rw-r--r-- 1 root root 10 2006-06-30 13:56 ports.conf
-rw-r--r-- 1 root root 2266 2006-01-16 18:15 README
drwxr-xr-x 2 root root 4096 2006-06-30 13:56 sites-available
drwxr-xr-x 2 root root 4096 2006-06-30 13:56 sites-enabled
drwxr-xr-x 2 root root 4096 2006-01-16 18:15 ssl
其中
apache2.conf
为apache2服务器的主配置文件, 查看此配置文件, 你会发现以下内容
# Include mole configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
# Include all the user configurations:
Include /etc/apache2/httpd.conf
# Include ports listing
Include /etc/apache2/ports.conf
# Include generic snippets of statements
Include /etc/apache2/conf.d/[^.#]*
有此可见, apache2 根据配置功能的不同, 对配置文件进行了分割, 这样更利于管理
conf.d
下为配置文件的附加片断,默认情况下, 仅提供了 charset 片断,
tony@tonybox:/etc/apache2/conf.d$ cat charset
AddDefaultCharset UTF-8
如有需要我们可以将默认编码修改为 GB2312, 即文件的内容为: AddDefaultCharset GB2312
httpd.conf
是个空文件
magic
文件中包含的是有关mod_mime_magic模块的数据, 一般不需要修改它.
ports.conf
则为服务器监听IP和端口设置的配置文件,
tony@tonybox:/etc/apache2$ cat ports.conf
Listen 80
mods-available
目录下是一些.conf和.load 文件, 为系统中可以使用的加载各种模块的配置文件, 而mods-enabled目录下则是指向这些配置文件的符号连接, 从配置文件apache2.conf 中可以看出, 系统通过mods-enabled目录来加载模块, 也就是说, 系统仅通过在此目录下创建了符号连接的mods-available 目录下的配置文件来加载模块。同时系统还提供了两个命令 a2enmod 和 a2dismod用于维护这些符号连接。这两个命令由 apache2-common 包提供。命令各式也非常简单: a2enmod [mole] 或 a2dismod [mole]
sites-available
目录下为配置好的站点的配置文件, sites-enabled 目录下则是指向这些配置文件的符号连接, 系统通过这些符号连接来起用站点 sites-enabled目录下的符号连接附有一个数字前缀, 如000-default, 这个数字用于决定启动顺序, 数字越小, 启动优先级越高. 系统提供了两个命令 a2ensite 和 a2dissite 用于维护这些符号连接。这两个命令由 apache2-common 包提供.
/var/www
默认情况下将要发布的网页文件应该置于/var/www目录下,这一默认值可以同过主配置文件中的DocumnetRoot 选项修改.