Apache的完全安装转载

Apache的完全安装转载,第1张

从互联网下载以下几个程序(本文采用DSO方式安装) 按如下步骤进行处理 apache_ tar gz mod_ssl tar gz mod_perl current tar mod_gzip a tar gz mod_fastcgi tar gz php tar gz(另需安装pth tar gz mm tar gz perl tar gz zlib tar gz libpng tar gz png gettext freetype jpeg gd gd ) 安装pth server# tar zxvf pth tar gzserver# cd pth server# /configure enable pthreadserver# makeserver# make testserver# make install 安装mm server# tar zxvf mm tar gzserver# cd mm server# /configure disable sharedserver# makeserver# make testserver# make install 安装perl server# tar zxvf perl tar gzserver# cd perl server# sh Configure deserver# makeserver# make testserver# make install 安装zlib server# tar zxvf zlib tar gzserver# cd zlib server# /configureserver# make testserver# make install 安装libpng (need zlib png) server# pkg_add png versionserver# tar zxvf libpng tar gzserver# cd libpng server# cp scripts/makefile freebsd makefileserver# makeserver# make testserver# make install安装apache_ + mod_ssl (need OpenSSL MM Prel_ ) + mod_perl current 解压缩包(以下文件解压在同一个目录下)server# tar zxvf apache_ tar gzserver# tar zxvf mod_ssl tar gzserver# tar zxvf mod_perl current tar 配置mod_ssl server# cd mod_ssl server# /configure with apache= /apache_ with mm= /mm prefix=/usr/local/apache enable shared=sslserver# cd 配置安装mod_perl server# cd mod_perl server# perl Makefile PL EVERYTHING= APACHE_SRC= /apache_ /src USE_APACI= PREP_HTTPD= DO_HTTPD= (Freebsd 下有两处错误提示 忽略)server# makeserver# make installserver# cd 配置安装apache_ server# cd apache_ server# /configure prefix=/usr/local/apache enable module=ssl activate module=src/modules/perl/libperl a enable module=most enable shared=maxserver# makeserver# make certificate(生成证书 按提示选择 并记下密码)server# make install安装mod_gzip server# tar zxvf mod_gzip a tar gzserver# cd mod_gzip aserver# edit Makefile(将APXS的路径 APXS?=/usr/local/ *** in/apxs 改成apache安装路径 APXS?=/usr/local/apache/bin/apxs)server# makeserver# make install安装mod_fastcgi server# tar zxvf mod_fastcgi tar gzserver# cd mod_fastcgi server# /usr/local/apache/bin/apxs o mod_fastcgi so c * cserver# /usr/local/apache/bin/apxs i a n fastcgi mod_fastcgi so安装php (need gettext freetype jpeg gd gd png 这里假设mysql已经安装并运行)server# pkg_add gettest versionserver# pkg_add jpeg versionserver# pkg_add gd versionserver# pkg_add gd versionserver# tar zxvf php tar gzserver# cd php server# /configure with apxs=/usr/local/apache/bin/apxs with config file path=/usr/local/apache/conf with mysql=/usr/local/mysql with mysql sock=/tmp/ enable versioning enable ftp enable bcmath disable debug enable memory limit=yes enable track vars enable sysvsem enable sysvshm with gettext enable trans sid enable fastcgi with tsrm pth=pth config with freetype dir=/usr/local with jpeg dir=/usr/local with gd=/usr/local enable gd native ttf with png dir=/usr/local with zlib=/usr/local with zlib dir=/usr/local with mm=/usr/local with openssl with iconvserver# makeserver# make installserver# cp php ini dist /usr/local/apache/conf/php ini配置apache是其支持php 及php ini文件 在/use/local/apache/conf下有这两个文件: /usr/local/apache/conf/ 示例 /usr/local/apache/conf/php ini 示例 php ini在中添加 AddType application/x php AddType application/x s配置php ini upload_tmp_dir /tmpdefault_charset gb register_globals On安装至此完成 可以使用如下命令启动apache server# /usr/local/apache/bin/apachectl start如果要使用则使用如下命令启动 server# /usr/local/apache/bin/apachectl startssl(键入证书密码 然后回车)编写apache的自启动文件(Freebsd下):server# edit /usr/local/etc/rc d/apache server sh 示例 apache server shserver# chmod apache server sh重新启动服务器 Bind 就可以自动运行!测试服务器 在/usr/local/apache/htdocs下编辑test php来测试php是否安装成功 示例 test php<?phpinfo()?>在浏览器中的地址栏中输入即可以显示php的安装信息 如果你使用的是apachects startssl命令启动的话 你可以在浏览器中的地址栏中输入 来显示php的安装信息 虚拟服务器的设置(摘自化境编程界Apache Server设置虚拟WEB 作者 不详)原文 未加修改 一 IP型虚拟主机 IP型虚拟主机指每一虚拟主机对应唯一的IP 可通过多个物理网卡或虚拟网口实现多IP Solaris 和Windows NT都支持这种方式 两种配置多虚拟主机的方法 为每一虚拟主机启动一个d进程 下列情况下使用此方法 ) 需考虑安全隔离问题 如两个d运行于不同的User Group Listen ServerRoot 两者用户除通过Web相互浏览数据 无法访问其他数据 ) 能提供足够内存和文件描述器 设置方法 为每一虚拟主机建立一个独立的d安装 在每一个安装路径的配置文件里 用Listen指令指定进程服务的IP 如 Listen : 为所有虚拟主机启动一个d进程 下列情况下使用此方法 ) 允许在虚拟主机间共享d配置 ) 计算机服务于大量的请求 运行多个进程使服务器性能降低成为重要考虑因素 设置方法 在配置文件里 用VirtualHost指令为每一虚拟主机设置ServerAdmin ServerName DocumentRoot ErrorLog TransferLog或CustomLog 如 <VirtualHost >#此处建议用IPServerAdmin webmasDocumentRoot /usr/local/etc/d/htdocs/ *** allcoServerName #建议此处用域名ErrorLog /usr/local/etc/d/logs/ *** allco/error_logTransferLog /usr/local/etc/d/logs/ *** allco/access_log</VirtualHost><VirtualHost >#此处建议用IPServerAdmin webmastDocumentRoot /groups/baygroup/ServerName #建议此处用域名ErrorLog /groups/baygroup/logs/error_logTransferLog /groups/baygroup/logs/access_log</VirtualHost>同时要做虚拟网口或网卡的配置 在DNS也要做相应设置 二 名字型虚拟主机(Apache 以上版本支持) IP型虚拟主机虽好 但不是最佳方案 它要求每一虚拟主机有一专用 IP 在某些机器上难于实现 名字型虚拟主机是指每一虚拟主机的名字不相同 但IP一样 它的好处是不限制虚拟主机数量 配置 使用简单 不需另外的软硬件 缺点是客户端必须支持该部分协议 最近版本的浏览器都支持 某些老版本浏览器不支持 但Apache为此提供了解决方法 设置方法 在配置文件里 用NameVirtualHost指令设置虚拟主机 如 NameVirtualHost <VirtualHost ># lishixinzhi/Article/program/Java/ky/201311/28070

运行 Terminal,输入命令:复制代码 代码如下:ssh username@ip,然后输入密码。2. 安装 Apache 软件:复制代码 代码如下:yum install httpd3. 设置 Apache 在服务器启动时运行:复制代码 代码如下:chkconfig --levels 235 httpd on4. 在 Apache 配置文件中配置域名:复制代码 代码如下:vi /etc/httpd/conf/httpd.conf,找到 ServerName ,添加“域名:80”,保存并退出。5. 重启 Apache:复制代码 代码如下:service httpd restart6. 浏览器中访问第4步配置的域名,如果出现“Apache 2 Test Page powered by CentOS”的页面,说明配置成功。

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-module=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本身会因为进程过多导致性能下降。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8168965.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存