今天说说如何搭建HTTP服务器!
目的:
使用“多IP地址”方法实现多个网站。
使用“主机头名”方法实现多个网站。
使用“多端口”方法实现多个网站。
这回用图形界面来,不用说,先来看安装软件!
System-Administation-添加和删除软件
这里有所有的软件包,不知道在哪个分类下面,或只知道一部分名字的话,都可以在上面搜索
我们这里选择Web services—Web Server—Apache HTTP Server,它下面是软件包的名称,就是在命令行里安装时用的!
还有Databases—MySQL Database server里的The MySQL server and related files-----这里用其实操作比较简单,用不到数据库。
系统会自动选择所有依赖的未安装的包一并安装
左下角提示正在安装
安装完成后,如果选中它,右下角会提示已经安装,而且默认是打了勾的!
我们新建三个目录,以比较明显的方法展示效果
/home/http1 /home/http2 /home/http3
然后分别进入目录,新建default.htm,内容随便写,反正是做实验!
然后设置这几个目录的权限chmod 755 /home –R就是/home下的所有目录及文件权限为读取和执行!
给网卡设置三个IP:2.2.2.2 2.2.2.3 2.2.2.4
或者设置三个网卡,每个网卡一下IP,但在图形管理界面这样直接添加有问题,结果是只有一个IP能访问,所以我们要到/etc/sysconfig/network-scripts下手动生成ifcfg-eth0, ifcfg-eth0:1,ifcfg-eth0:2,每个里面有一个IP,但网卡可以是一个,所以我们可以先设置一个IP,再去cp两个ifcfg-eth0分别重命名成ifcfg-eth0:1和ifcfg-eth0:2,把IP改了就成了!
我们再来安装selinux和防火墙的图形管理界面,搜一下system-config就出来了,包括语言设置,用户与组,服务等
在系统,管理里可以看到!
安装完也没什么用,还不是很会用,就不用了,只是说下怎么安装,在后面还是用命令行!
安装完HTTP后,我们先简单做个实验:
vi /etc/httpd/conf/httpd.conf 打开http主配置文件
我们可以看到DocumentRoot “/var/www/html” ,这是说默认的主页文件存放的目录
还能看到DirectoryIndex index.html ,这是说默认的主页文件是index.html
如果你要用别的,可以在最前面写上你要用的,比如123.htm
所以我们在这个目录下新建123.htm
里面写上内容:123
我们来启动一下服务
service httpd restart
apachectl restart
成功!
现在进入正题:
我们先把DirectoryIndex改回index.html
在最下面找到
输入 :set nu,让它显示行号
可以看到是1003-1009行,然后 :1003,1009y,复制这它们,按P粘贴到最后
然后修改成你要的内容:
NameVirtualHost 2.2.2.4:80
Listen 2.2.2.4:80
ServerAdmin 后写管理员邮箱,这里我随便写的,反正没有!
DocumentRoot后写index.html所在的目录
ServerName 后写我们要访问的其中一个域名,我们这里的三个域名分别为www.http1.com www.http2.com www.http3.com
ErrorLog和CustonLog是错误日志和数据日志吧,不用改
三个模式是一样的,只是端口,IP,域名按自己的设置就行了!
我们先看下三个IP,同为80端口
因为我们没有做DNS服务器,所以在/etc/hosts里加入IP与域名的对应关系
不让写??所以进行这些操作最好用root用户或sudo权限,启动服务也是一样!
完成后重启服务,试试看!
service network restart
ifconfig,如果没有显示eth0:1和eth0:2
那么ifup eth0:1和eth0:2启用设备
service httpd restart
apachectl restart
提示目录根不存在,关才防火墙和selinux
试验下
links www.http1.com
links www.http2.com
links www.http3.com
links 2.2.2.2
links 2.2.2.3
links 2.2.2.4
来加不同的端口
重启服务
www.http1.com端口没变,访问方式还是links www.http1.com,一切正常
www.http3.com的端口为9003
如果不加端口,还按原来的方式访问就会拒绝连接
links www.http3.com:9003,OK!
同样,www.http2.com端口9002
成功,就到这里吧!