安装Open SSL
[root@Apache ~]# wget https://www.openssl.org/source/openssl-1.0.2m.tar.gz --下载openssl软件包 [root@Apache ~]# tar xf ./openssl-1.0.2m.tar.gz -C /usr/src --解压到/usr/src目录 [root@Apache ~]# cd /usr/src/openssl-1.0.2m/ --切换路径到/usr/src目录 [root@Apache ~]# ./config --prefix=http://www.likecs.com/usr/local/ssl --shared --检查配置,指定路径 [root@Apache ~]# make && make install --编译,安装 [root@Apache ~]# echo /usr/local/ssl/lib >> /etc/ld.so.conf [root@Apache ~]# ldconfig --使库文件生效安装Apache
[root@Apache ~]# wget --下载apache软件包 [root@Apache ~]# tar xf httpd-2.4.28.tar.gz -C /usr/src --解压到/usr/src目录 [root@Apache ~]# cd /usr/src/httpd-2.4.28/ --cd到解压路径 [root@Apache ~]# ./configure -help --查看参数帮助 [root@Apache ~]# ./configure --prefix=http://www.likecs.com/usr/local/apache2 --enable-so --enable-rewrite --enable-ssl --with-ssl=http://www.likecs.com/usr/local/ssl --with-mpm=prefork [root@Apache ~]# make [root@Apache ~]# make install--prefix 指定安装路径
--enable-so 让apache核心装载DSO(动态共享目标)
--enable-rewrite 启用重写功能
--enable-modules 将模块编译到apache中
--enable-ssl 打开ssl协议
--with-mpm 指定运行模型
运行模式:/etc/httpd/conf.modules.d/00-mpm.conf
多进程模型:prefork(预派生)
多进程多线程混合模型:worker(工作者)、event(事件)
编译安装成功后,安装在:/usr/local/apache2/ 目录下
配置文件:/usr/local/apache2/conf/httpd.conf
启动命令:/usr/local/apache2/bin/apachectl
默认网站家目录:/usr/local/apache2/htdcos
在一台Web服务器上,通过多个独立的IP地址、域名或端口号提供不同的Web站点。
基于IP地址的虚拟主机:
每个网站拥有不同的 IP 地址
通过访问服务器上不同的IP地址访问不同的网站
基于域名的虚拟主机:
所有的虚拟主机可以共享同一个IP地址
使用不同的域名来访问不同的网站
基于端口的虚拟主机:
所有的虚拟主机可以共享同一个IP地址
各虚拟主机之间通过不同的端口号进行区分
准备工作:
[root@Apache ~]# vim /usr/local/apache2/conf/htttpd.conf 52 #Listen 80 # 将这行注释掉 220 #DocumentRoot "/usr/local/apache2/htdocs" # 将这行注释掉 1. Apache基于IP的虚拟主机配置第一步:使用ifconfig设置3个虚拟ip
[root@Apache ~]# ifconfig ens33:1 192.168.1.11/24 [root@Apache ~]# ifconfig ens33:2 192.168.1.12/24 [root@Apache ~]# ifconfig ens33:3 192.168.1.13/24 [root@Apache ~]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.20 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::20c:29ff:fe14:1fb9 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:14:1f:b9 txqueuelen 1000 (Ethernet) RX packets 216515 bytes 207352525 (197.7 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 109646 bytes 23077100 (22.0 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ens33:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.11 netmask 255.255.255.0 broadcast 192.168.1.255 ether 00:0c:29:14:1f:b9 txqueuelen 1000 (Ethernet) ens33:2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.12 netmask 255.255.255.0 broadcast 192.168.1.255 ether 00:0c:29:14:1f:b9 txqueuelen 1000 (Ethernet) ens33:3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.13 netmask 255.255.255.0 broadcast 192.168.1.255 ether 00:0c:29:14:1f:b9 txqueuelen 1000 (Ethernet)