1.LINUX操作系统课程设计:企业服务器的源码配置与实现怎样做
LINUX操作系统课程设计:企业服务器的配置与实现怎样做
一般购买大品牌的服务器才有相应的驱动程序:
硬件:4核CPU,4G的内存,主板带RIAD,G内存,
安装与配置Web服务器
Apache服务器源代码安装:
Apache模块和MPM可使用类型的更详细介绍:
bined;
LogFormat "%h %1 %u %t \"%r\" %>s %b" common;
LogFormat "%{ Referer}i->%U" referer;
LogFormat "%{ User-agent}i“ agent;
LogFormat logs/access_log common
LogFormat "%v %h %l %u %t \"%r"\ %>s %b" vhost
CustomLog logs/vhost_log vhost
%a 远程主机IP地址
%A 本地主机IP地址
%h 远程主机名
%H 请求协议
%l 远程登录名
%u 来自auth 的远程用户
%U 请求的URL路径
%U{ User-agent}i 用户浏览器类型
%b 发送的字节数,不包括HTTP标题
%t 请求的源码时间
%r HTTP请求的第一行的内容
%s HTTP响应状态码,代表访问成功,代表文件未找到,源码代表禁止访问,源码代表未授权访问,源码代表错误请求。源码c标准库源码
%m 请求方法
%v 服务于该请求的源码服务器的ServerName
%V 服务器的名字,取决于UseCanonicalName的源码设置
%{ Host}i 返回HTTP请求的主机头信息,可能含端口号信息
split-logfile </var/www/myweb/vhost_log //当所有虚拟机日志都记录在主站点日志中时,源码使用此命令将日志按虚拟主机名分组,源码拆分成一个个独立的源码日
志文件,第个日志文件采用"虚拟主机名.log“形式命名,源码其中包含了该虚拟主机所产生的源码日志记录;
容器与访问控制指令:容器指令通常用于封装一组指令,使其在容器条件成立时有效,源码或者用于改变指令的源码vb搜索 源码作用域。
<IfModue ! mpm_winnt.c> //<IfModue>用于判断指定的模块是否存在,若存在(被静态地编译进服务器,或是被动态装载进服务器)则包含于
其中的指令将有效,否则会被忽略。可嵌套使用。
<IfModue ! mpm_netware.c> //若要使模块不存在时所包含的指令有效,只需在模块名前加一个“!”即可,源码战神引擎
User nobody
Group # -1
</IfModue>
</IfModue>
基于域名虚拟主机:
例:假设当前服务器的IP地址为..3.,现要在该服务器创建两个基于域名的虚拟主机,使用端口为标准的,其域名分别为www.myweb1.com和www.myweb2.com,站点根目录分别为/var/www/myweb1和/var/www/myweb2,日志文件分别放在/var/vhlogs/myweb1和/var/vhlogs/myweb2目录下面,Apache服务器原来的主站点采用域名www.myweb.com进行访问。
#vi /etc/hosts //使用/etc/hosts进行域名注册;
..3. www.myweb1.com www.myweb2.com www.myweb.com
#ping www.myweb1.com //检测域名解析是否正常;
#ping www.myweb2.com
#ping www.myweb.com
#mkdir -p /var/www/myweb1
#mkdir -p /var/www/myweb2
#mkdir -p /var/vhlogs/myweb1
#mkdir -p /var/vhlogs/myweb2
#vi /etc/ //当一个请求到时,服务器会首先检查它是否使用了一个能和NameVirtualHost相匹配的IP地址。如果匹配,潍坊源码科技就会
DocumentRoot /usr/local/apache/htdoes //就会查找每个与这个IP地址相对应的<VirtualHost>配置段,并尝试找出一个ServerName或ServerAlias配置相
ServerAdmin yjghddii@.com //与请求的主机名(域名)相同的,若找到,则使用该虚拟主机的配置,并响应其访问请求。否则将使用符合这个
</VirtualHost> //IP地址的第一个列出的虚拟主机。在最前面的ffmpeg源码大小虚拟主机成为默认虚拟主机。
<VirtualHost ..3.>
ServerName www.myweb1.com
DocumentRoot /var/www/myweb1
DirectoryIndex index.php index.php3 index.html index.htm default.html default.html
ServerAdmin yjghddii@.com
ErrorLog /var/vhlogs/myweb/error_log
TransferLog /var/vhlogs/myweb1/access_log
</VirtualHost>
<VritualHost ..3.>
ServerName www.myweb2.com
DocumenRoot /var/www/myweb2
DirectoryIndex index.php index.php3 index.htm index.html default.htm default.html
ServerAdmin yjghddii@.com
ErrorLog /var/vhlogs/myweb2/error_log
TranferLog /var/vhlogs/myweb2/access_log
</VirtualHost>
<Directory /var/www> //对Web站点目录设置访问控制;
Options FllowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
Apachectl –S //查查虚拟主机配置是否正确;
Aparhectl restart //重启Apache服务器配置生效;
例:
NameVirtualHost ... //服务器配有两块网卡,IP:内网...,外网...,在Internet网中,企业域名
NameVirtualHost ... //www.example.com指向外网IP地址,在企业内网的DNS服务器中,指向内网IP地址;现要求为来自内网
<VirtualHost ... ...> //外网的请求提供同样的Web服务。(
</Virtual>
例:
Listen //服务器:...,服务器上创建两个基于域名(主机名)的虚拟主机,域名:www.myweb3.com和www.
Listen //myweb4.com,每个虚拟主机的端口和端口,分别服务一个Web站点,其站点根目录分别为
// /var/www/myweb3-、/var/www/myweb3-、/var/www/myweb4-、/var/www/myweb4-。
NameVirtualHost ...: //www.myweb3.com的端口作为默认Web站点。
NameVirtualHost ...:
<VirtualHost ...:>
ServerName www.myweb3.com
DocumentRoot /var/www/myweb3-
<VirtualHost>
<VirtualHost ...:>
ServerName www.myweb3.com
DocumentRoot /var/www/myweb3-
</VirtualHost>
<VirtualHost ...:>
ServerName www.myweb4.com
DocumentRoot /var/www/myweb4-
</VirtualHost>
<VirtualHost ...:>
ServerName www.myweb4.com
DocumentRoot /var/www/myweb4-
</VirtualHost>
基于IP地址虚拟主机:
#cd /etc/sysconfig/network-scripts //服务器有两张网卡eth0、eth1,eth0:...,
#cp ifctg-eth1 ifcfg-eth1:0 //eth1:....eth0网卡用作了基于主机名的虚拟主机,
#vi ifcfg-eth1:0 //eth1通过IP别名方式,为其绑定多个IP地址,用于提供基于IP地址
DEVICE=eth1:0 //的虚拟主机。eth1绑定的第一张虚拟网卡的设备名为eth1:0,对应的
IPADDR=... //配置文件为ifcfg-eth1:0,通过修改配置文件中的设备名和IP地址,
#ifdown eth1 //即可实现IP地址的绑定。
#ifup eth1:0
#ifup eth1
#ping ...
#ping ...
#vi /etc/hosts //...:www.example2.com,...:
... www.example3.com //www.example3.com,试为其创建基于IP地址的虚拟主机,端口使用
#mkdir -p /var/www/example2 //目录分别为/var/www/example2、/var/www/example3,为这两个域再增
#mkdir -p /var/www/example3 //端口,使其也能在端口发布另外的Web站点。Web站点根目录分
///var/www/example2-、/var/www/example3-
#vi
DocumentRoot /var/www/example2
</VirtualHost>
<VirtualHost ...:>
ServerName www.example2.com
DocumentRoot /var/www/example2-
</VirtualHost>
<VirtualHost ...:>
ServerName www.exaple3.com
DocumentRoot /var/www/example3
</VirtualHost>
<VirtualHost ...:>
ServerName www.exaple3.com
DocumentRoot /var/www/example3-
</VirtualHost>