linux搭建web服务器

linux httpd

假设服务器地址为192.168.80.20/24

  1. 1.   将准备安装的httpd软件包共享给everyone ,

(1)在linux上mount.cifs  //真机IP地址/共享文件夹名   /media /

ls  /meidia/ 查看

tar    xjvf   httpd-2.4.10.tar.bz2    -C  /usr/src       解压至/usr/src下

下面两个插件是httpd2.4以后的版本所需要的

http://ftp.jaist.ac.jp/pub/apache/apr/apr-1.4.6.tar.gz

wgethttp://ftp.jaist.ac.jp/pub/apache/apr/apr-util-1.4.1.tar.gz

下载上面两个软件解压后复制到httpd的srclib解压目录中(不带版本号)

tar   xzvf  apr-1.4.6.tar.gz   -C   /opt

tar   xzvf  apr-util-1.4.1.tar.gz    -C    /opt

cd   /opt

cp   -r    apr-1.4.6   /usr/src/httpd-2.4.10/srclib/apr

cp   -r   apr-util-1.4.1     /usr/src/httpd-2.4.10/srclib/apr-util

(2)安装编译语言工具

yum -y install \

gcc \

gcc-c++ \

make \

pcre-devel

(3)cd    /usr/src/httpd-2.4.10/

输入以下脚本(配置需求)

./configure \

--prefix=/usr/local/apache\

--enable-so \

--enable-rewrite \

--enable-mods-shared=most\

--with-mpm=worker\

--disable-cgid \

--disable-cgi

(参数解释:

--prefix=   //来指定安装路径

--enable-so  //该参数表示支持用mod_so模块提供的功能,用LoadModule在httpd.conf文件或包含的conf文件中动态加载某个模块。让 Apache 可以支持DSO模式

--enable-rewrite  //支持 URL 重写

--enable-mods-shared=most  //选项:告诉编译器将所有标准模块都动态编译为DSO模块。

--with-mpm=worker// 让apache以worker方式运行

--with-mpm=worker   //该参数是配置apache将以何种模式编译的。Apache网站文档指出不同操作系统下的不同的默认模式.

--disable-cgid //禁止用一个外部 CGI 守护进程执行CGI脚本

--disable-cgi //禁止编译 CGI 版本的 PHP)

安装如无报错,输入 make(编译)

安装如无报错,再输入make  install(完成安装)

(4) grep   -v   "#"   /usr/local/apache/bin/apachectl   >   /etc/init.d/httpd

vi/etc/init.d/httpd

在文件最前面插入下面的行,使其支持chkconfig命令:

#!/bin/sh

#   chkconfig:   2345   85  15

# description:   Apache  is  a  World  Wide Web server.

第一行4个数字参数意义分别为:哪些Linux级别需要启动httpd(2,3,4,5);启动序号(85);关闭序号(15)。

chmod   +x   /etc/init.d/httpd                      添加执行权限

chkconfig   --add   httpd

注如果在/etc/init.d/apache不编辑这个# chkconfig: 2345 85 15内容的话,就没法用chkconfig--add来添加apache这个服务的

chkconfig --listhttpd     查看启动项

(5) vi    /usr/local/apache/conf/httpd.conf

ServerName   s01.rhel.com

Listen  网卡IP地址:80

ln   -s   /usr/local/apache/conf/httpd.conf    /etc/httpd.conf                   做软链接

/etc/init.d/httpd  start/stop                      启动/停止

配置文件位置:  /usr/local/apache

cat   /usr/local/apache/htdocs/index.html    查看默认文档

2.匿名访问虚拟目录

(1)vi   /usr/local/apache/conf/httpd.conf

在末尾加上

Include    /usr/local/apache/conf/conf.d/*.conf

保存。

(2)cd     /usr/local/apache/conf/conf.d

vi    vdir.conf

输入以下内容

Alias   /ic/ "/var/www/icons/"                    虚拟目录对应物理路径

<Directory  "/var/www/icons">

Options   Indexes  MultiViews   FollowSymLinks

AllowOverride   None

Order   allow,deny                      白名单

Allow   from   all                      允许所有人访问

Require   all   granted                   给目录授权

</Directory>

保存。

/usr/local/apache/bin/httpd  -k  start     启动web服务

可以在浏览器上输入   //192.168.80.20/ic/    访问虚拟目录

3.需要身份验证的虚拟目录

vi   /usr/local/apache/conf/conf.d/vdir.conf

在原有的语句末尾加入以下一段:

Alias   /share/    "/usr/share/doc/"

<Directory  "/usr/share/doc/">

Options   Indexes  MultiViews   FollowSymLinks

AllowOverride   None

Order   allow,deny

Allow  from  all

AuthName   "hello"

AuthType   Basic                           设置认证的类型,basic为基本的认证

AuthUserFile   /usr/local/apache/user                 设置用于保存用户账号、密码的认证文件路径(htpasswd)

require valid-user                        要求只有认证文件中的合法用户才能访问。valid-user表示所有合法用户

#Require  all   grante

</Directory>

保存

添加有访问权限的用户

./htpasswd  -c  /usr/local/apache/user test              增加test用户,第一次要加-c

./htpasswd  /usr/local/apache/user  jack          增加jack用户,不需要加-c

/usr/local/apache/bin/httpd  -k  restart    重启服务

这是,访问\\192.168.80.20\share\  的时候,就需要使用test或者jack用户来验证。

4.虚拟主机

搭建好DNS

1、全局配置文件

vi   /etc/named.conf

options {

listen-on  port 53  { 192.168.80.11; };

allow-query     { any; };

}

2、区域配置文件

vi   /etc/named.rfc1912.zones

zone  "benet.com"  IN  {

type  master;

file  "benet.com.zone";

allow-update  { none; };

};

zone  "accp.com"  IN  {

type  master;

file  "accp.com.zone";

allow-update  { none; };

};

3、区域数据配置文件

# vi  /var/named/benet.com.zone

$TTL 1D

@       IN SOA @  admin(

0       ; serial

1D     ; refresh

1H      ; retry

1W      ; expire

3H)    ; minimum

NS     @

A      192.168.80.20

www     A      192.168.80.20

# vi/var/named/accp.com.zone

$TTL 1D

@       IN SOA @  accp(

0       ; serial

1D      ; refresh

1H      ; retry

1W      ; expire

3H)    ; minimum

NS     @

A      192.168.80.20

www     A      192.168.80.20

(1)基于域名,准备搭建www.benet.com和www.accp.com两个网址,IP均为192.168.80.20 .

cd   /usr/local/apache/conf/conf.d

vi   vhost.conf

输入以下脚本:

<VirtualHost  192.168.80.20:80>

ServerAdmin  [email protected]

DocumentRoot   /opt/benet/              主页物理路径

ServerName  www.benet.com            域名

ErrorLog  logs/bjxh.com-error_log      错误日志地址

CustomLog   logs/bjxh.com-access_log common

</VirtualHost>

<Directory"/opt/benet/">                             授权目录

Options  Indexes  MultiViews  FollowSymLinks

AllowOverride  None

Order  allow,deny                               白名单

Allow  from  all

Require  all  granted

</Directory>

<VirtualHost  192.168.80.11:80>

ServerAdmin  [email protected]

DocumentRoot  /opt/accp/

ServerName  www.accp.com

ErrorLog  logs/xhce.com-error_log

CustomLog  logs/xhce.com-access_log common

</VirtualHost>

<Directory  "/opt/accp/">

Options  Indexes  MultiViews  FollowSymLinks

AllowOverride  None

Order  allow,deny

Allow  from  all

Require  all  granted

</Directory>

(或者直接为/opt/授权

<Directory  "/opt">

AllowOverride  None

Options  None

Require  all  granted

</Directory>)

准备两个主页,放在/opt/下

cd  /opt/

mkdir   benet

mkdir    accp

echo    “<h1>this  is benet</h1>   >   /opt/benet/index.html

echo    “<h1>this  is  accp</h1>   >  /opt/accp/index.html

/usr/local/apache/bin/httpd  -k  restart    重启服务

这时候,在浏览器上输入www.benet.com 或者www.accp.com的时候就可以分别访问两个主页了.

(2)基于端口(比较少用)

vi   /usr/local/apache/conf/conf.d/vhost.conf

将原内容改为:

Listen   192.168.80.11:8080

<Directory"/opt/benet/">

Options Indexes MultiViews FollowSymLinks

AllowOverride None

Order allow,deny

Allow from all

Require all granted

</Directory>

<VirtualHost192.168.80.20:80>

[email protected]

DocumentRoot /opt/benet/

ServerName www.benet.com

ErrorLog logs/benet.com-error_log

CustomLog logs/benet.com-access_log common

</VirtualHost>

<Directory"/opt/accp/">

Options Indexes MultiViews FollowSymLinks

AllowOverride None

Order allow,deny

Allow from all

Require all granted

</Directory>

<VirtualHost192.168.80.20:8080>

[email protected]

DocumentRoot /opt/accp/

ServerName www.accp.com

ErrorLog logs/accp.com-error_log

CustomLog logs/accp.com-access_log common

</VirtualHost>

红字为跟以上不同的地方

保存,重启服务。

这时候,访问www.benet.com和www.accp.com:8080可以分别访问两个主页

linux搭建web服务器,布布扣,bubuko.com

时间: 2024-10-26 06:48:09

linux搭建web服务器的相关文章

Linux中创建RAID5卷并搭建web服务器详解

北大青鸟的实验项目 实验任务:使用Linux的RHEL6.5版本64位的操作系统搭建web服务器,创建RAID5卷并挂载到web目录下. 实验过程:1.创建RHEL6.5操作系统,并且配置主机名.IP地址192.168.1.100/24等实验要求. 2.添加4块大小为30G的虚拟磁盘,做RAID5卷,可用空间为60GB. 3.关闭iptables防火墙和SElinux. 4.打开win7虚拟机进行IP地址192.168.1.200配置,并测试互联互通. 5.搭建网站服务器,名称为web.bene

如何搭建web服务器 使用Nginx搭建反向代理服务器

转载   如何搭建web服务器 使用Nginx搭建反向代理服务器 :   http://blog.csdn.net/w13770269691/article/details/6977727 引言:最近公司有台服务器遭受DDOS攻击,流量在70M以上,由于服务器硬件配置较高所以不需要DDOS硬件防火 墙.但我们要知道,IDC机房是肯定不允许这种流量一直处于这么高的,因为没法具体知道后面陆续攻击的流量会有多大,如果流量过大就会导致整个IDC网络 瘫痪.我们都知道北方的数据中心和南方的数据中心从带宽出

轻松使用Nginx搭建web服务器

如果读者以前做过web开发的话,就应该知道如何去搭建一个web服务器来跑你的web站点,在windows下你可能会选择去用IIS,十分的快捷,在linux下,你可能首先会想到apache,"一哥"( W3Techs网站数据的排名)啦 今天小编要介绍后起之秀nginx来实现web服务器.小编在前面的博客中也详细的聊过apache的使用,如今又来说nginx的使用,读者可能以后搭建web服务器的话就不知道选用哪一种,O(∩_∩)O~,别急,小编这就来给读者分析一下Nginx和Apache区

ubuntu 12.04下搭建web服务器(MySQL+PHP+Apache) 教程(转+亲测)

ubuntu 12.04下搭建web服务器(MySQL+PHP+Apache) 教程 1.切换管理员身份 在ubuntu中需要用root身份进行操作,所以用下面的命令确保以root身份登录: sudo su 2.开始安装ssh (安装SSH-server:(用Xshell操作更方便,先获得ssh服务支持)sudo apt-get updatesudo apt-get install openssh-server openssh-client启动SSH-Serversudo /etc/init.d

CentOS 6.2下搭建Web服务器

1Centos 6.2下搭建web服务器 如今,Linux在Web应用越来越广,许多企业都采用Linux来搭建Web服务器,这样即节省了购买正版软件的费用,而且还能够提高服务器的安全性. 之前我们介绍了如何在openSUSE 12.1下搭建Web服务器,里面详细介绍了在openSUSE 12.1下搭建服务器的方法,其实除了Red Hat和openSUSE,CentOS也是人们经常用到的搭建Web服务器的Linux版本. CentOS是企业Linux发行版领头羊Red Hat Enterprise

在国外搭建 Web 服务器 - Linode VPS

在国外搭建 Web 服务器 - Linode VPS 买一台虚拟服务器(VPS),把你网站放在上面跑跑,找找感觉,平时也可以用它来练习.前几天,搜索到了有人推荐 Linode 的 VPS,昨天又有朋友问我用过 Linode 吗,于是就买了一份来给大家测试一下.如果你的网站用户主要来自国外,Linode 这样的服务器是不错的选择. 注:Linode 是国外的服务商,想要购买需要使用信用卡,信用卡支付不需要密码,确定以后会立即支付.还有,毕竟服务器在国外,有时会被封.所以,购买要谨慎哦.哦,还有,如

Linux Apache web服务器 配置详细教程

3 Linux Apache web服务器 v2.4.29学习要点: 1.apache用途,工作模式,httpd.conf的配置重要参数2.虚拟主机 工作模式的参数优化 3.1 Apache 概述: 3.1.1 Apache 概述Apache是世界使用排名第一的Web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一.它快速.可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中.同时Apache音译为

Ubuntu 搭建Web服务器(MySQL+PHP+Apache)详细教程 (全网最全)

Ubuntu 搭建Web服务器(MySQL+PHP+Apache)详细教程 (全网最全) 看了好多人的博客,有的不全 or 有问题,整理了一下,适合小白 新手先整理几个小问题 1.为啥使用 Linux 搭建服务器? 一个是因为主流的云服务器太贵,买个低配的容易崩,听说 Linux 比较稳定,之后 2.PHP 和 Apache 啥关系? 一说到 php, ?很多人会本能地想到 apache, 其 php 和 apache 没有半毛钱的关系 php 是语言, 而apache是web服务器 3.Wha

基于Nginx搭建Web服务器及虚拟主机相关配置详解

随着计算机与Internet技术的高速发展,各种各样的Web站点也就成为面向用户的中坚力量.在各种网站服务器软件中.除了Apache外,还有一款轻量级的HTTP服务器软件--Nginx. 基于Apache搭建Web服务器可以参考博文:基于Apache搭建Web服务器详解 一.Nginx服务简介 Nginx由俄罗斯的lgor Sysoev开发,专为性能优化而开发,其最知名的优点就是它的稳定性和低系统资源消耗.以及对HTTP并发连接的高处立能力(单台物理服务器可支持30000~50000个并发请求)