Apache启动脚本

合集下载

Linux操作系统案例教程电子教案 第13章 WWW 服务器

Linux操作系统案例教程电子教案 第13章 WWW 服务器

Apache 服务器
案例二
一个Linux主机的IP为192.168.0.11,且该地 址在DNS服务器对应和 (别名)要求: ①在apache上设置访 问/var/www/html ②在apache上设置访问 /web2
Apache 的性能设置
# vi /etc/httpd/conf/httpd.conf
格式如下: 格式如下: [全局设置] //设置Web服务器性能参数 全局选项 ……… …… … [主服务器的设置] //设置默认站点的相关选项 主服务器的选项 … … ……… [虚拟主机] //设置虚拟主机相关选项 ………
• /usr/bin/htpasswd 建立http用户和设置用户口令) (存放目录的访问控制选项)
Apache 服务器
Apache 服务器
输入http://127.0.0.1 输入http://127.0.0.1 或 http://localhost
Apache 服务器
13-3 配置Apache
Apache 服务器
②#vi /etc/httpd/conf/httpd.conf //在虚拟主机区添加内容:
NameVirtualHost 192.168.0.11 <VirtualHost 192.168.0.11> ServerAdmin root@ ServerName DocumentRoot /web2 </VirtualHost> <VirtualHost 192.168.0.11> ServerAdmin root@

/etc/httpd/conf/httpd.conf (Apache 的核心配置文件) (Apache 的启动脚本) (Apache 的管理工具,命令) (Apache模块存放目录)

Apache与tomcat的整合、负载均衡和加入启动和系统服务

Apache与tomcat的整合、负载均衡和加入启动和系统服务

Apache与tomcat的整合及负载均衡系统环境:Windows Server 2021 R2 SP1虚拟机环境:Red Hat Enterprise Linux Server release 5.4 (Tikanga) X64安装软件版本:JDK:1.6.0_19 Tomcat: Apache: JK:实施步调:一、安装软件。

1tar -xz2345./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most--with-mpm=worker6make7make install89/jk/native/1011./configure --with-apxs=/usr/local/apache2/bin/apxs12make13make install二、配置整合及负载均衡1 cp / /usr/local/apache2/modules2配置环境变量vi /etc/profile在文本末尾参加以下内容JAVA_HOME=JDK安装路径CATALINA_HOME=tomcat安装路径CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME CATALINA_HOME CLASSPATH PATH3应用初始的环境变量source /etc/profile4点窜以下几处而且在末尾加上:Include /usr/local/apache2/conf/ 5添加及设置vi /usr/local/apache2/增加以下内容#加载mod_jk ModuleJkLogLevel info载分配控制制器JkMount /* lb6添加及设置vi /usr/local/apache2/conf/添加以下内容worker.list = lb,tomcat1,tomcat2#server 列表#========tomcat1========worker.tomcat1.port=8009#ajp13 端标语,在tomcat下server.xml配置,默认8009#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat1.type=ajp13worker.tomcat1.lbfactor = 1#server的加权比重,值越高,分得的请求越多#========tomcat2========worker.tomcat2.port=8009#ajp13 端标语,在tomcat下server.xml配置,默认8009#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat2.type=ajp13worker.tomcat2.lbfactor = 1#server的加权比重,值越高,分得的请求越多#========controller,负载均衡控制器========worker.lb.type=lbworker.lb.balanced_workers=tomcat1,tomcat2#指定分担请求的tomcatworker.lb.sticky_session=17、将JSP文件放入/usr/local/tomcat/webapps/ROOT8 启动apache和tomcat8 翻开浏览器输入就是这么简单。

APACHE安装配置说明

APACHE安装配置说明

APACHE安装配置说明⼀、软件下载⼆、环境检查# rpm -qa|grep zlibzlib-devel-1.2.3-3zlib-1.2.3-3# rpm -qa|grep sslopenssl-devel-0.9.8b-10.el5openssl-0.9.8b-10.el5如果需要依赖包,安装其对应的devel包即可,此处仅⽤到zlib和ssl。

另,如果有httpd包,要先卸载掉或停⽌其服务。

三、编译安装1、针对安装⽬的的说明(来⾃INSTALL⽂件)如果是开发者则使⽤此选项,--with-included-apr利于连接apache的代码或者是调试apache,其消除了由于版本或者编译中跟APR或者APR-util代码产⽣的不匹配;如果从⼦版本编译apache,要先运⾏buildconf(需要Python,GNU autoconf和libtool),然后运⾏configure。

发⾏包不⽤。

如果要在FreeBSD5.4之前编译时包含apache的threaded MPM,需要使⽤--enable-threads和--with-mpm 参数在Mac上编译⼦版本,要使⽤GNU Libtool 1.4.2及以上版本2、关于SSL加密和正则表达式(来⾃⽂件README)Apache2.0及以上版本在⽬录modules/ssl/下包含了mod_ssl模块⽤于配置和监听ssl⽹络接⼝的连接。

(另外,⼀些apr-util版本在⽬录srclib/apr-util/ssl/下提供了ssl⽹络接⼝)带有单词crypto的包的名字,可能包含openssl加密库的⽬标代码。

如果apache的加密功能不理想或者要排除再重分配,则可以使⽤包的名字包含nossl的发布包。

Apache使⽤PCRE包包含的正则表达式。

3、对configure参数的说明配置帮助表:-h, --help显⽰帮助信息display this help and exit--help=short ⽤short参数将只显⽰正在运⾏的当前脚本的选项,⽽不能列出适⽤于Apache配置脚本所运⾏的外部配置脚本的选项display optionsspecific to thispackage--help=recursive 使⽤recursive参数将显⽰所有程序包的简短描述display the shorthelp of all theincluded packages-V, --version显⽰版本display version information and exit-q, --quiet, --silent不显⽰checking……信息do notprint`checking...' messages--cache-file=FILE在指定⽂件中存储测试结果cache test results in FILE [disabled]-C, --config-cache 在⽂件config.cache中存储测试结果alias for `--cachefile=config.cache'-n, --no-create configure脚本运⾏结束后不输出结果⽂件,常⽤于正式编译前的测试。

apache配置及模块指令速查

apache配置及模块指令速查

Apache常用模块和参数1Apache服务配置指令1.1基本配置命令AccessFileName语法AccessFileName filename默认值AccessFileName .htaccess作用域server config, virtual host此命令是针对目录的访问控制文件的名称;AddDefaultCharset语法AddDefaultCharset On|Off|charset默认值AddDefaultCharset Off作用域server config, virtual host, directory, .htaccess用于指定默认的字符集,在HTTP的回应信息中,若在HTTP头中未包含任何关于内容字符集类型的参数时,此指令指定的字符集添加到HTTP头中,此时将覆盖网页文件中通过META 标记符所指定的字符集.默认字符集为: AddDefaultCharset UTF-8 若显示中文时出现乱码,解决方法是将字符集设置为GB2312,即: AddDefaultCharset GB2312DefaultType语法DefaultType MIME-type默认值DefaultType text/plain作用域server config, virtual host, directory, .htaccess服务器不知道文件类型时,用缺省值通知客户端;DocumentRoot设置Apache提供文件服务的目录;ErrorDocument设置当有问题发生时,Apache所做的反应;ForceType此指令强制所有匹配的文件被当作在MIME-type中指定的Content-Type来伺服。

比如说,如果您有一个包含大量GIF文件的目录,可您又不想全都为它们加上".gif"扩展名的话,您可以这样做:型的扩展名。

你可以通过使用"None"覆盖任何ForceType设置:<IfModule>使用不包含在Apache安装中的模块的命令Include包含其它的配置文件Listen默认值:80Listen命令告诉服务器接受来自指定端口或者指定地址的某端口的请求,如果listen仅指定了端口,则服务器会监听本机的所有地址;如果指定了地址和端口,则服务器只监听来自该地址和端口的请求Options控制某个特定目录所能使用的服务器功能;其值有:None:表示只能浏览,FollowSymLinks:允许页面连接到别处,ExecCGI:允许执行CGI,MultiViews:允许看动画或是听音乐之类的操作,Indexes:允许服务器返回目录的格式化列表,Includes:允许使用SSI。

启动引导程序配置文件

启动引导程序配置文件

超级服务程序配置文件和目录
inetd配置文件 /etc/inetd.conf
TCP Wrappers配置文件 /etc/hosts.allow和/etc/hosts.deny
xinetd配置文件 /etc/xinetd.conf和/etc/xinetd.d目录里的文件
硬件配置
打印机配置文件
BSD LPD核LPRng的本地打印机主配置文件 /etc/printcap
CUPS本地打印机主配置和远程访问受权文件 /etc/cups/cupsd.conf
BSD LPD远程访问受权文件 /etc/hosts.lpd
LPRng远程访问受权文件 /etc/lpd.perms
SSH服务程序配置文件 /etc/ssh/sshd_config
SSH客户端配置文件 /etc/ssh/ssh_config
XDM配置文件 /etc/X11/xdm目录下
GDM配置文件 /etc/X11/gdm目录下
VNC服务程序配置文件 /usr/X11R6/bin/vncserver启动脚本和~/.vnc目录里的文件
文件服务程序配置文件
ProFTPd配置文件 /etc/proftpd.conf
vsftpd配置文件 /etc/vsftpd.conf
NFS服务程序的输出定义文件 /etc/exports
NFS客户端装配的NFS输出 /etc/fstab
Samba配置文件 /etc/samba/smb.conf
启动引导程序配置文件
LILO /etc/lilo.conf
GRUB /boot/grub/menu.lst
系统启动文件核脚本
主启动控制文件 /etc/inittab

服务器配置

服务器配置

下载httpd-2.2.11.tar.gz,把httpd-2.2.11.tar.gz放到/soft 下 [root@localhost ~]#cd /soft [root@localhost soft]#tar zxvf httpd-2.2.11.tar.gz //解压 apache的压缩包 [root@localhost soft]#cd httpd-2.2.11 //定位到httpd-2.2.11 文件夹下 [root@localhost httpd-2.2.11]#ls //查看显示httpd-2.2.11文件夹下内容 [root@localhost httpd-2.2.11]#./configure --help | more //查看安装apache配置参数 [root@localhost httpd-2.2.11]#./configure -prefix=/usr/local/apache --enable-so // 配置apache路径 [root@localhost httpd-2.2.11]#make //编译apache [root@localhost httpd-2.2.11]#make install //安装apache
• 安装
– Rpm – 双击光盘中的vsftpd-2.0.7-1fc10.i386.rpm安装 – 或者rpm –ivh vsftpd-2.0.7-1fc10.i386.rpm安装
关键文件
• 主配置文件
– /etc/vsftpd/vsftpd.conf
• 访问控制配置文件
– /etc/vsftpd/ftpusers – /etc/vsftpd/user_list
• vsFTPd(very secure FTP daemon)是一个功能强大 的FTP服务器,能够在大部分UNIX类操作系统上, 支持很多其他FTP服务器不支持的特征

rc.local介绍(linux启动系列之一)

rc.local介绍(linux启动系列之一)

rc.local介绍(linux启动系列之⼀)linux有⾃⼰⼀套完整的启动体系,抓住了linux启动的脉络,linux的启动过程将不再神秘。

本⽂中假设inittab中设置的init tree为:/etc/rc.d/rc0.d/etc/rc.d/rc1.d/etc/rc.d/rc2.d/etc/rc.d/rc3.d/etc/rc.d/rc4.d/etc/rc.d/rc5.d/etc/rc.d/rc6.d/etc/rc.d/init.d⽬录1. 关于linux的启动2. 关于rc.d3. 启动脚本⽰例4. 关于rc.local5. 关于bash启动脚本6. 关于开机程序的⾃动启动1. 关于linux的启动init是所有进程的顶层init读取/etc/inittab,执⾏rc.sysinit脚本(注意⽂件名是不⼀定的,有些unix甚⾄会将语句直接写在inittab中)rc.sysinit脚本作了很多⼯作:init $PATHconfig networkstart swap functionset hostnamecheck root file system, repair if neededcheck root space....rc.sysinit根据inittab执⾏rc?.d脚本linux是多⽤户系统,getty是多⽤户与单⽤户的分⽔岭在getty之前运⾏的是系统脚本2. 关于rc.d所有启动脚本放置在 /etc/rc.d/init.d下rc?.d中放置的是init.d中脚本的链接,命名格式是:S{number}{name}K{number}{name}S开始的⽂件向脚本传递start参数K开始的⽂件向脚本传递stop参数number决定执⾏的顺序3. 启动脚本⽰例这是⼀个⽤来启动httpd的 /etc/rc.d/init.d/apache 脚本:代码:#!/bin/bash......可以看出他接受start,stop,restart,status参数然后可以这样建⽴rc?.d的链接:代码:cd /etc/rc.d/init.d &&ln -sf ../init.d/apache ../rc0.d/K28apache &&ln -sf ../init.d/apache ../rc1.d/K28apache &&ln -sf ../init.d/apache ../rc2.d/K28apache &&ln -sf ../init.d/apache ../rc3.d/S32apache &&ln -sf ../init.d/apache ../rc4.d/S32apache &&ln -sf ../init.d/apache ../rc5.d/S32apache &&ln -sf ../init.d/apache ../rc6.d/K28apache4. 关于rc.local经常使⽤的 rc.local 则完全是习惯问题,不是标准。

基于linux的apache+mysql+php的安装配置

基于linux的apache+mysql+php的安装配置

1 引言现在的网站不仅仅是提供一些静态页面就可以了,它还包括怎样存储数据、怎样查询数据、怎样处理用户的请求、怎样创建包含正确信息的文档,要适应这些需要有很多选择。

目前,很多人选择这样的组合:Apache+Php+MySQL来建设自己的网站,因为它们都可以免费从网上下载,而且很容易在Linux平台下应用,网站的安全性、稳定性和执行效率都非常优秀。

1.1课题背景Linux以其开放源代码精神和系统的稳定效能迅速崛起,目前全世界使用Linux架设的网站数呈爆炸性增长,甚至已影响到Microsoft的Windows NT[1]。

计算机的网络应用不可避免地会用到数据库,由于MySQL在Linux平台上使用和配置简单,得到了许多开发人员的亲睐。

PHP是一种公开源码的自由软件,利用它可以开发各种功能强大、交互性强的动态页面。

并且,PHP具有跨平台性,在一个平台上用PHP脚本语言编写的程序,不用修改就可以在另一个平台上直接运行,基于一种数据库编写的PHP脚本语言程序,略作修改就能适用于另一种数据库。

目前基于完全免费的组合Linux+Apache+Php+MySQL 已逐渐成为Web应用的主流。

1.2目的与意义WWW(即World Wide Web,简称Web)是迄今为止Internet上最成功的服务,它能够实现信息发布、资料查询、数据处理和视频点播等诸多应用。

架设WWW服务器是Internet应用中必不可少的工作,而在服务器软件方面,Apache服务器具有举足轻重的地位。

说到Apache我们不得不提一下MySQL和PHP,MySQL是一个小型关系型数据库管理系统,由于其体积小、速度快、总体拥有成本低,被广泛地应用在Internet上的中小型网站中。

PHP 是一种HTML内嵌式的语言,它与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。

Apache配置详解

Apache配置详解

Apache配置详解Apache的配置由httpd.conf文件配置,因此下面的配置指令都是在httpd.conf文件中修改。

主站点的配置(基本配置)(1) 基本配置:ServerRoot "/mnt/software/apache2" #你的apache软件安装的位置。

其它指定的目录如果没有指定绝对路径,则目录是相对于该目录。

PidFile logs/httpd.pid #第一个httpd进程(所有其他进程的父进程)的进程号文件位置。

Listen 80 #服务器监听的端口号。

ServerName :80 #主站点名称(网站的主机名)。

ServerAdmin admin@ #管理员的邮件地址。

DocumentRoot "/mnt/web/clusting" #主站点的网页存储位置。

以下是对主站点的目录进行访问控制:<Directory "/mnt/web/clusting">Options FollowSymLinksAllowOverride NoneOrder allow,denyAllow from all</Directory>在上面这段目录属性配置中,主要有下面的选项:Options:配置在特定目录使用哪些特性,常用的值和基本含义如下:ExecCGI: 在该目录下允许执行CGI脚本。

FollowSymLinks: 在该目录下允许文件系统使用符号连接。

Indexes: 当用户访问该目录时,如果用户找不到DirectoryIndex指定的主页文件(例如index.html),则返回该目录下的文件列表给用户。

SymLinksIfOwnerMatch: 当使用符号连接时,只有当符号连接的文件拥有者与实际文件的拥有者相同时才可以访问。

其它可用值和含义请参阅:/Apache/ApacheManual/mod/core.html#options AllowOverride:允许存在于.htaccess文件中的指令类型(.htaccess文件名是可以改变的,其文件名由AccessFileName指令决定):None: 当AllowOverride被设置为None时。

Apache的安装及使用

Apache的安装及使用

Apache的安装及使⽤PHP最初是 Persional Home Page 的缩写,表⽰个⼈主页。

下载Apache进⼊apache服务器官⽹这⾥我们以下载稳定版的Apache httpd 2.4.39 Released 为例,点击download。

下载后解压,改名为httpd,放到D盘根⽬录。

Apache 各⽬录作⽤⽬录名说明bin Apache执⾏⽂件所在⽬录,如httpd.exe、ApacheMonitor.exe 等cgi-bin GCI⽹页程序存放⽬录conf Apache服务器配置⽂件所在⽬录error错误⽂件⽬录,⽤于保存因服务器设置或浏览器请求的数据错误时产⽣的错误htdocs默认Web⽂档根⽬录,就是存放默认⾸页的位置icons Apache预设的⼀些⼩图标存放⽬录includeliblogs Apache ⽇志⽂件存放⽬录,主要包括访问⽇志 access.log 和错误⽇志 error.logmodules Apache服务器⽀持的动态加载模块所在⽬录安装 Aapche 服务使⽤管理员⾝份运⾏cmd,命令⾏下进⼊到 Apache 下⾯的 bin ⽬录,输⼊httpd -k install把apache安装成windows后台服务。

命令启动Apache服务:httpd -k starthttpd -k stop停⽌httpd -k restart重启更多命令,请使⽤httpd -help查看如果出现以下错误【原因】httpd.conf ⾥⾯配置的 ServerRoot 路径跟实际路径不⼀致,导致路径⽆效。

【解决⽅案】修改 D:\httpd\Apache24\conf ⽬录下的 httpd.conf ⽂件,在38⾏左右Define SRVROOT "D:/httpd/Apache24"ServerRoot "${SRVROOT}"注意路径是 “/”不是“\”端⼝冲突问题Apache 默认使⽤的端⼝号为 80,如果遇到 80 端⼝被其他应⽤程序占⽤的情况,有两种解决⽅案:⽅案⼀:将占⽤ 80 端⼝的程序关闭掉,具体做法如下:在cmd中运⾏netstat -ano "80"查看是哪个PID在使⽤ 80 端⼝,查找到PID 后可以使⽤ kill 命令将其结束掉进程。

Linux——搭建Apache(httpd)服务器

Linux——搭建Apache(httpd)服务器

Linux——搭建Apache(httpd)服务器⼀、基本概念Apache(或httpd)是Internet上使⽤最多的Web服务器技术之⼀,使⽤的传输协议是http超⽂本传输协议(⼀个基于超⽂本的协议),⽤于通过⽹络连接来发送和接受对象。

有两个版本:http:超⽂本传输协议,通过线路以明⽂形式发送,默认情况下使⽤80/TCP(也可以使⽤其他端⼝)https:经TLS/SSL安全加密的超⽂本传输协议,默认情况下使⽤端⼝443/TCP⼆、了解Apache的配置⽂件1、配置⽂件的分类在Linux系统中配置服务,其实就是修改服务的配置⽂件,httpd服务程序的主要配置⽂件及存放位置如下:配置⽂件的名称存放位置服务⽬录/etc/httpd主配置⽂件/etc/httpd/conf/httpd.conf虚拟主机配置⽂件/etc/httpd/conf.d⽇志⽂件/etc/httpd/logs⽹站数据⽬录/var/www/html2、主配置⽂件的重要参数主配置⽂件/etc/httpd/conf/httpd.conf参数⽤途ServerRoot服务⽬录ServerAdmin管理员邮箱User运⾏服务的⽤户Group运⾏服务的⽤户组ServerName⽹站服务器的域名DocumentRoot⽂档根⽬录(⽹站数据⽬录)Directory⽹站数据⽬录的权限Listen监听的IP地址与端⼝号DirectoryIndex默认的索引页页⾯ErrorLog错误⽇志⽂件CustomLog访问⽇志⽂件Timeout⽹页超时时间,默认为300秒3、Directory标签<Directory "/var/www/html">AllowOverride None #设置.htaccess⽂件中的指令类型,None表⽰禁⽌使⽤.htaccess,该参数⼀般不改Require all granted #设置权限,默认开启所有客户机访问权限</Directory>三、如何配置Apache服务器⾸先准备:主机名、⽹络、yum源1、更改主机名:[root@localhost ~]# hostnamectl set-hostname $主机名[root@localhost ~]# bash #环境变量重载2、配置⽹络(1)虚拟交换机、⽹络适配器选择仅主机模式,并且配置为192.168.100.0⽹段;(2)编辑⽹络配置⽂件:[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33修改: BOOTPROTO=static #改为静态IP地址ONBOOT=yes #改为开机⾃启IPADDR=192.168.100.10PREFIX=24 或者 NETMASK=255.255.255.0(3)重启⽹络服务:[root@localhost ~]# systemctl restart network3、配置yum源(1)先在VMware⾥⾯把系统镜像⽂件连接到虚拟机的光驱上;(2)挂载光驱⾥的镜像:[root@localhost ~]# mount /dev/cdrom /media(3)修改yum源配置⽂件:[root@localhost ~]# vim /etc/yum.repos.d/local.repo[rhel]name=rhelbaseurl=file:///mediaenabled=1gpgcheck=0(4)清空yum源缓存信息:[root@localhost ~]# yum clean all(5)检索当前yum源信息:[root@localhost ~]# yum repolist任务⼀:配置简单的httpd服务1、安装httpd服务[root@server ~]# yum -y install httpd2、启动httpd服务[root@server ~]# systemctl restart httpd[root@server ~]# systemctl enable httpd3、配置防⽕墙[root@server ~]# firewall-cmd --permanent --add-service=http[root@server ~]# firewall-cmd --reload4、关闭SELinux[root@server ~]# setenforce 05、客户端测试[root@client ~]# firefox http://IP地址或者 curl http://IP地址任务⼆:配置基于⽤户的个⼈⽹站注意:该⽤户必须在Linux系统中存在1、新建⼀个⽤户(⽹站基于该⽤户)[root@server ~]# useradd user0[root@server ~]# passwd user02、修改⽤户的家⽬录权限,使其他⽤户具有读取和执⾏的权限[root@server ~]# chmod -R 705 /home/user03、创建存放⽤户个⼈主页空间的⽬录,写user0的⽹页⽂件[root@server ~]# mkdir /home/user0/public_html[root@server ~]# cd /home/user0/public_html[root@server ~]# echo "this is user0's web">>index.html4、修改基于⽤户的httpd配置⽂件[root@server ~]# vim /etc/httpd/conf.d/userdir.conf修改: UserDir enabled #开启,表⽰让httpd服务程序开启个⼈⽤户主页功能UserDir public_html #去注释,UserDir参数表⽰⽹站数据在⽤户家⽬录中的保存⽬录名称5、配置防⽕墙(同上)[root@server ~]# firewall-cmd --permanent --add-service=http[root@server ~]# firewall-cmd --reload6、修改selinux权限[root@server ~]# getsebool -a|grep home[root@server ~]# setsebool httpd_enable_homedirs on7、重启服务[root@server ~]# systemctl restart httpd8、客户端测试[root@client ~]# firefox http://IP地址/~username 或者curl http://IP地址/~username任务三:配置基于域名访问的虚拟主机1、新建虚拟主机的⽹页⽂件[root@server ~]# mkdir /www/one /www/two[root@server ~]# cd /www/one[root@server ~]# echo "this is a web for virtual host one">>index.html[root@server ~]# cd /www/two[root@server ~]# echo "this is a web for virtual host two">>index.html[root@server ~]# chmod o+x /www2、配置虚拟主机的⽂件[root@server ~]# cd /etc/httpd/conf.d[root@server ~]# vim vhost.conf<Directory /www/one> #设置⽹站⽬录权限Require all granted #开启所有客户机访问权限</Directory><VirtualHost 192.168.100.10> #虚拟主机ServerName #定义服务器名称DocumentRoot /www/one/ #⽹站数据⽬录</VirtualHost><Directory /www/two>Require all granted</Directory><VirtualHost 192.168.100.11>ServerName DocumentRoot /www/two/</VirtualHost>3、做域名解析⽂件server/client[root@server ~]# vim /etc/hosts192.168.100.10 192.168.100.11 4、配置防⽕墙(同上)[root@server ~]# firewall-cmd --permanent --add-service=http[root@server ~]# firewall-cmd --reload5、修改虚拟主机⽹页⽂件的selinux上下⽂类型[root@server ~]# semanage fcontext -a -t httpd_sys_content_t '/www(/.*)?'[root@server ~]# restorecon -RFv /www6、重启服务[root@server ~]# systemctl restart httpd任务四:配置基于端⼝访问的虚拟主机1——新建虚拟主机的⽹页⽂件[root@server ~]# mkdir /www/8088[root@server ~]# echo "this is a web for port 8088 ">>index.html[root@server ~]# mkdir /www/8089[root@server ~]# echo "this is a web for port 8089 ">>index.html2——配置虚拟主机的⽂件[root@server ~]# cd /etc/httpd/conf.d[root@server ~]# vim vhost.conf<Directory /www/8088/>Require all granted</Directory><virtualHost 192.168.100.10:8088>DocumentRoot /www/8088/</virtualHost><Directory /www/8089/>Require all granted</Directory><virtualHost 192.168.100.10:8089>DocumentRoot /www/8089/</virtualHost>3、配置防⽕墙[root@server ~]# firewall-cmd --permanent --zone=public --add-port=8089/tcp[root@server ~]# firewall-cmd --permanent --zone=public --add-port=8088/tcp[root@server ~]# firewall-cmd --reload4、关闭SELinux[root@server ~]# setenforce 05、重启服务[root@server ~]# systemctl restart httpd6、使⽤浏览器访问任务五:配置基于TLS加密的虚拟主机注意:经TLS/SSL安全加密的超⽂本传输协议,默认情况下使⽤端⼝443/TCP 1、安装TLS加密软件,⽹站内容不⽤明⽂传输[root@server ~]# yum -y install mod_ssl2、⽣成密钥[root@server ~]# openssl genrsa >tlsweb.key3、⽣成证书请求⽂件[root@server ~]# openssl req -new -key tlsweb.key > tlsweb.csr4、⽣成证书⽂件[root@server ~]# openssl req -x509 -days 365 -key tlsweb.key -in tlsweb.csr >tlsweb.crt5、修改ssl.conf配置⽂件[root@server ~]# vim /etc/httpd/conf.d/ssl.confSSLCertificateFile /etc/pki/tls/certs/tlsweb.crtSSLCertificateKeyFile /etc/pki/tls/private/tlsweb.key6、把证书⽂件拷贝到ssl.conf配置⽂件⾥的对应路径下⾯[root@server ~]# cp tlsweb.crt /etc/pki/tls/certs/7、把秘钥⽂件拷贝到ssl.conf配置⽂件⾥的对应路径下⾯[root@server ~]# cp tlsweb.key /etc/pki/tls/private/。

Apache使用教程(安装与配置)

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等应用模块的独立升级,完全互不影响。

1.WEB应用容量规划:根据硬件配置和WEB应用的特点进行WEB服务的规划及一些简单的估算公式;2.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=most3.可选应用模块/工具的安装:php resin mod_gzip mod_expire及各个模块之间的配合;mod_php安装:./configure --with-apxs=/home/apache/bin/apxs --enable-track-vars --with-mysqlmod_resin安装:./configure --with-apxs=/home/apache/bin/apxsmod_gzip安装:修改Makefile中的 apxs路径:然后make make install工具:日志轮循工具cronolog安装:4.升级/维护:看看通用和模块化的安装过程如何简化了日常的升级/维护工作;按照以上的方法:系统管理员和应用管理员的职责可以清楚的分开,互相独立。

阿帕奇服务器配置方案

阿帕奇服务器配置方案

apach服务器配置大全(1)2011-09-16 23:02:00 来源:互联网一、资料参考与准备:Apache软件包的组成/etc/httpd/conf/*一、资料参考与准备:Apache软件包的组成/etc/httpd/conf/*主配置文件位置/etc/rc.d/init.d/httpd启动脚本/home/httpd/htmlhtml文档的主目录/home/httpd/html/manual/*html格式的帮助文档/home/httpd/icons/*用在html网页中的图标文件/usr/sbin/*-/usr/sbin/htpasswd建立和更新apache用户的程序-/usr/sbin/httpdhttp服务器程序/var/log/httpd/*日志文件主配置文件httpd.conf的常用指令解释ServerType standalone#设置服务器的形式是单独启动(standalone),还是借由互联网络伺服程序inetd来启动。

一般使用前者。

ServerRoot "/usr/local/apache"#设置服务器的Home目录,用来存放服务器的设置文件、错误文件、记录文件。

PidFile logs/httpd.pid#程序启动时,把父进程httpd的进程号(process id)存在这个文件中。

这个文件名可以配合PidFile 指令加以改变。

ScoreBoardFile logs/apache_status#设置网络上WWW服务器一些执行程序的记录文件。

#ResourceConfig conf/srm.conf#AccessConfig conf/access.conf#这两个文件的内容已经包含在httpd.conf文件中了。

Timeout 300#如果客户端300秒还没有连上,或者服务器300秒还没有传送数据到客户端,就会自动断线。

KeepAlive On#设置是否支持续传功能。

第十章 Apache服务器配置

第十章 Apache服务器配置
CustomLog “/tmp/www2/logs/logs/acess-log.txt common”
< /VirtualHost>
基于IP地址虚拟主机
1、基于IP地址的虚拟主机 < VirtualHost 172.16.100.252 > ServerName 172.16.100.252 ServerAdmin web1@ DocumentRoot “/tmp/html/www3” DirectoryIndex index.html ErrorLog “/tmp/html/www3/logs/error-log.txt”
基于域名虚拟主机
2、基于域名的虚拟主机
NameVirtualHost 172.16.100.253
< VirtualHost 172.16.100.253 > ServerName ServerAdmin web1@ DocumentRoot “/tmp/vh1/html” DirectoryIndex index.html ErrorLog /tmp/vh1/html/logs/error-log.txt CustomLog /tmp/vh1/html/logs/acess-log.txt combined < /VirtualHost>
Apache服务的安装
与Apache 相关的软件包
软件包名称 功能描述 Apache服务器程序 Apache2.0手册
httpd : httpd-manual: Systen-config-httpd:
Apche的图形配置工具
rpm –qa | grep httpd
Apache的主要文件和目录结构
温馨提示:Apache2.0 开始应用MPM(Multi-Proecessing Moudles 多道处理模块),用户可以根据自己需要选择不同的核心模块。查 看当前服务器的核心模块使用命令”httpd -l”

apache2服务器的搭建和配置步骤详解

apache2服务器的搭建和配置步骤详解

apache2服务器的搭建和配置步骤详解前⾔这篇⽂章主要给⼤家介绍了在linux下apache2服务器的搭建和配置的相关资料,具有⼀定的参考价值,下⾯来⼀起学习学习吧。

步骤如下⾸先当然是下载包包:myths@myths-X450LD:~$ sudo apt-get install apache2装完后就可以⽤了,在地址栏输⼊本地回送地址127.0.0.1或者localhost就可以进⼊到默认的界⾯了。

默认的界⾯当然就是apache2的说明界⾯了。

其实很多情况下并不需要在⽹上寻找帮助⽂档,⼏乎所有的软件都会⾃带使⽤说明,只是略长,我们⼀般都懒得看。

但是其实很多重要的东西就在这当中,⽐如apache2的默认界⾯⾥:Ubuntu Logo Apache2 Ubuntu Default PageIt works!This is the default welcome page used to test the correct operation of the Apache2 server after installation on Ubuntu systems. It is based on the equivalent page on Debian, from which the Ubuntu Apache packaging is derived. If you can read this page, it mea If you are a normal user of this web site and don't know what this page is about, this probably means that the site is currently unavailable due to maintenance. If the problem persists, please contact the site's administrator.Configuration OverviewUbuntu's Apache2 default configuration is different from the upstream default configuration, and split into several files optimized for interaction with Ubuntu tools. The configuration system is fully documented in /usr/share/doc/apache2/README.Debian.gz. Refe The configuration layout for an Apache2 web server installation on Ubuntu systems is as follows:/etc/apache2/|-- apache2.conf| `-- ports.conf|-- mods-enabled| |-- *.load| `-- *.conf|-- conf-enabled| `-- *.conf|-- sites-enabled| `-- *.confapache2.conf is the main configuration file. It puts the pieces together by including all remaining configuration files when starting up the web server.ports.conf is always included from the main configuration file. It is used to determine the listening ports for incoming connections, and this file can be customized anytime.Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/ directories contain particular configuration snippets which manage modules, global configuration fragments, or virtual host configurations, respectively.They are activated by symlinking available configuration files from their respective *-available/ counterparts. These should be managed by using our helpers a2enmod, a2dismod, a2ensite, a2dissite, and a2enconf, a2disconf . See their respective man pages for The binary is called apache2\. Due to the use of environment variables, in the default configuration, apache2 needs to be started/stopped with /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not work with the default configuration. Document RootsBy default, Ubuntu does not allow access through the web browser to any file apart of those located in /var/www, public_html directories (when enabled) and /usr/share (for web applications). If your site is using a web document root located elsewhere (such as i The default Ubuntu document root is /var/www/html. You can make your own virtual hosts under /var/www. This is different to previous releases which provides better security out of the box.Reporting ProblemsPlease use the ubuntu-bug tool to report bugs in the Apache2 package with Ubuntu. However, check existing bug reports before reporting a new bug.Please report bugs specific to modules (such as PHP and others) to respective packages, not to the web server itself.Valid XHTML 1.0 Transitional仅仅从这个⽂件中,我们就可以⾄少得到以下的重要信息:当访问本机的时候,默认进⼊的页⾯是/var/www/html/index.html。

Apache编译参数详解

Apache编译参数详解

Apache编译参数详解【2.2.10版】配置选项下列选项会影响configure脚本自身的行为。

方括号”[]“内是默认值。

-C–config-cache等价于–cache-file=config.cache–cache-file=FILE在FILE文件中缓存测试结果(默认禁用)。

-h–help[=short|recursive]显示帮助信息然后退出。

使用short参数将只显示正在运行的当前脚本的选项,而不能列出适用于Apache配置脚本所运行的外部配置脚本的选项。

使用recursive参数将显示所有程序包的简短描述。

-n–no-createconfigure脚本运行结束后不输出结果文件,常用于正式编译前的测试。

-q–quiet不显示脚本工作期间输出的”checking …”消息。

–srcdir=DIR指定源代码所在目录DIR 。

[configure脚本所在目录或父目录]–silent等价于–quiet-V–version显示版权信息后退出。

安装目录这些选项控制着安装目录的结构。

安装目录的结构取决于所选择的布局。

方括号”[]“内是默认值。

–prefix=PREFIX体系无关文件的顶级安装目录PREFIX ,也就Apache的安装目录。

[/usr/local/apache2] –exec-prefix=EPREFIX体系相关文件的顶级安装目录EPREFIX ,把体系相关的文件安装到不同的位置可以方便地在不同主机之间共享体系相关的文件。

[PREFIX]默认情况下,make install 将会把所有文件分别安装到/usr/local/apache2/bin ,/usr/local/apache2/lib 目录下。

可以用–prefix 指定一个不同于/usr/local/apache2的安装前缀,比如:–prefix=$HOME 。

定义一个目录布局–enable-layout=LAYOUT使用名为LAYOUT的布局配置所有源代码和编译脚本。

使用脚本实现故障时自动重启Apache代码

使用脚本实现故障时自动重启Apache代码

使用脚本实现故障时自动重启Apache代码自动重启故障相信大家都遇到过,原因也有很多,跟系统,硬件或者外界因素都有关。

这篇文章主要介绍了使用脚本实现故障时自动重启Apache,需要的朋友可以参考下方法步骤最近不知道为什么博客总是莫名其妙地挂掉,重启Apache就好了,我也懒得去研究到底是哪里出了问题。

只是每次都需要手工SSH上去重启Apache,有点麻烦。

而且有时候在夜里挂掉,一晚上博客就都不能访问了。

后来终于忍无可忍,写了一段脚本来做这件事,代码如下:复制代码代码如下:#!/bin/shif ( wget --timeout=5 -q --spider / )thenecho "ok"else/etc/init.d/httpd restartecho "httpd restarted"fi原理很简单,就是尝试访问一下博客(第三行),如果有什么问题,就重启Apache(第七行)。

其中wget的参数–spider表示只是访问一下,并不下载内容。

如果你喜欢的话,还可以在else中加一段发邮件的代码,把Apache的error log直接发到邮件,方便分析,不过我就懒得做了。

然后把这段代码保存为check_apache.sh,添加到crontab中:复制代码代码如下:*/5 * * * * /var/www/check_apache.sh其中*/5表示每5分钟运行一下check_apache.sh。

注意打开crontab的时候要使用sudo,因为重启Apache需要sudo权限。

非常实用的一个小功能,给使用Linux的小伙伴们发福利啦~补充:电脑总是自动重启怎么办1、右击“我的电脑”,选择“属性”项。

2、在打开的系统属性窗口中选择“高级系统设置”项进入。

3、在打开的“系统属性”窗口中,切换至“高级”选择卡,然后点击“系统和故障恢复设置”按钮。

4、在打开的窗口中取消勾选“自动重启启动”项并按确认即可。

Apache Felix Framework启动和内嵌

Apache Felix Framework启动和内嵌

启动和内嵌Apache Felix Framework【本文档是Felix2.0.0及最终版本的启动介绍;它兼容Felix框架的旧版本。

】简介Felix很容易启动和嵌入到其他应用程序。

例如,Felix避免使用系统属性进行配置,因此可以在同一个虚拟机中启动多个Felix实例。

Felix也建立了多个单例工厂,如URL stream handler工厂。

其总体目标是在广泛的范围内使用框架。

OSGI启动和嵌入式API概述Felix实现了org.apache.felix.framewor.Felix类。

作为OSGI规范4.2的一部分,OSGI启动和嵌入式API已经标准化。

框架需要实现unch.Framework接口(继承了org.osgi.framework.Bundle接口)。

此接口提供了必要的信息启动和管理框架实例。

Bundel接口定义如下:public interface Bundle{BundleContext getBundleContext();long getBundleId();URL getEntry(String name);Enumeration getEntryPaths(String path);Enumeration findEntries(String path, String filePattern, boolean recurse);Dictionary getHeaders();Dictionary getHeaders(String locale);long getLastModified();String getLocation();URL getResource(String name);Enumeration getResources(String name) throws IOException;ServiceReference[] getRegisteredServices();ServiceReference[] getServicesInUse();int getState();String getSymbolicName();Version getVersion();boolean hasPermission(Object obj);Class loadClass(String name) throws ClassNotFoundException;void start() throws BundleException;void stop() throws BundleException;void uninstall() throws BundleException;void update() throws BundleException;void update(InputStream is) throws BundleException;}可以使用框架工厂类配置和建立框架实例。

systemctl启动脚本的编写

systemctl启动脚本的编写

systemctl启动脚本的编写CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/, 有系统(system)和用户(user)之分, 像需要开机不登陆就能运行的程序, 还是存在系统服务里吧, 即:/usr/lib/systemd/system目录下, 脚本要有754的权限每一个服务以.service结尾, 一般会分为3部分:[Unit]、[Service]和[Install]脚本的内容格式[Unit] 服务的说明Description 描述服务After 描述服务类别[Service] 服务运行参数的设置Type=forking 是后台运行的形式PIDFile 为存放PID的文件路径ExecStart 为服务的具体运行命令ExecReload 为重启命令ExecStop 为停止命令PrivateTmp=True表示给服务分配独立的临时空间注意:启动、重启、停止命令全部要求使用绝对路径[Install] 服务安装的相关设置, 可设置为多用户附录:Type=simple(默认值):systemd认为该服务将立即启动。

服务进程不会fork。

如果该服务要启动其他服务, 不要使用此类型启动, 除非该服务是socket激活型。

Type=forking:systemd认为当该服务进程fork, 且父进程退出后服务启动成功。

对于常规的守护进程(daemon), 除非你确定此启动方式无法满足需求, 使用此类型启动即可。

使用此启动类型应同时指定PIDFile=, 以便systemd能够跟踪服务的主进程。

Type=oneshot:这一选项适用于只执行一项任务、随后立即退出的服务。

可能需要同时设置RemainAfterExit=yes 使得systemd 在服务进程退出之后仍然认为服务处于激活状态。

Type=notify:与Type=simple 相同, 但约定服务会在就绪后向systemd 发送一个信号。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简介
以源码方式编译安装的Apache是没有启动脚本的,也就是说用户不能通过简单的Server httpd start/stop/restart等操作。

为了使用简便,我们建立一个Apache的启动脚本,把Apache加入系统SysV 服务。

[编辑]建立启动脚本
# vi /etc/rc.d/init.d/httpd
将下列代码粘贴到httpd文件中:
#!/bin/bash
# Startup script for the Apache2.0.X Web Server
# Fixed by Comsenz - Nanu (nanu@)
# chkconfig: - 85 15
# Source function library.
. /etc/rc.d/init.d/functions
if [ -f /etc/sysconfig/httpd ]; then
. /etc/sysconfig/httpd
fi
INITLOG_ARGS=""
apachectl=/usr/local/apache2/bin/apachectl
httpd=${HTTPD-/usr/local/apache2/bin/httpd}
prog=httpd
RETVAL=0
start() {
echo -n $"Starting $prog: "
daemon $httpd $OPTIONS
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/httpd
return $RETVAL
}
stop() {
echo -n $"Stopping $prog: "
killproc $httpd
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/httpd /var/run/httpd.pid
}
reload() {
echo -n $"Reloading $prog: "
killproc $httpd -HUP
RETVAL=$?
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status $httpd
RETVAL=$?
;;
restart)
stop
start
;;
condrestart)
if [ -f /var/run/httpd.pid ] ; then
stop
start
fi
;;
reload)
reload
;;
graceful|help|configtest|fullstatus)
$apachectl $@
RETVAL=$?
;;
*)
echo $"Usage: $prog
{start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtes t}"
exit 1
esac
exit $RETVAL
注意文件中的
apachectl=/usr/local/apache2/bin/apachectl
httpd=${HTTPD-/usr/local/apache2/bin/httpd}
两行,如果您的Apache不是安装在/usr/local/apache2,请根据情况更改以上两行中Apache的路径!
[编辑]授予httpd运行权限
# chmod 755 /etc/rc.d/init.d/httpd
[编辑]将httpd加入系统SysV服务并设置其开机自启动
# chkconfig --add httpd
# chkconfig --level 3 httpd on
这样,今后如需启动、停止、重启Apache就可以用以下方式了:
# service httpd start
# service httpd stop
“service httpd does not support chkconfig” 问题
在Redhat 上面使用編譯的方式安裝Apache 後,將bin/apachectl 複製到
/etc/rc.d/init.d/ 目錄,並想用chkconfig 將Apache 設定成自動啟動,但出現了"service httpd does not support chkconfig"。

解決方法是開解/etc/rc.d/init.d/httpd (或/etc/init.d/httpd),在第二行加入以下兩句:
# chkconfig: 2345 10 90
# description: Activates/Deactivates Apache Web Server
這樣就會將httpd 強制支援chkconfig。

相关文档
最新文档