一定要看官方文档!!!
但是看了也没什么用,因为太复杂了看不懂!!!
但是依然要看一下,参考一下,注意百度上的结果大部分都是2.2的,买的书更老
我用的是debian系,其他也可以参考
http://httpd.apache.org/docs/current/vhosts/name-based.html
相关命令(很有用)
- 查看apache版本
apachectl -v
- 查看apache配置目录(apache2.4配置文件位置变了)
apachectl -V
Server version: Apache/2.4.25 (Raspbian)
Server built: 2018-11-03T18:46:19
Server’s Module Magic Number: 20120211:68
Server loaded: APR 1.5.2, APR-UTIL 1.5.4
Compiled using: APR 1.5.2, APR-UTIL 1.5.4
Architecture: 32-bit
Server MPM: prefork
threaded: no
forked: yes (variable process count)
Server compiled with…
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=256
-D HTTPD_ROOT="/etc/apache2"
-D SUEXEC_BIN="/usr/lib/apache2/suexec"
-D DEFAULT_PIDLOG="/var/run/apache2.pid"
-D DEFAULT_SCOREBOARD=“logs/apache_runtime_status”
-D DEFAULT_ERRORLOG=“logs/error_log”
-D AP_TYPES_CONFIG_FILE=“mime.types”
-D SERVER_CONFIG_FILE=“apache2.conf”
将虚拟主机设置从Apache 2.2更新到Apache 2.4(文章很详细,基本按照这里面的配置)
实际配置:
- 环境
root@raspberrypi:~# uname -a
Linux raspberrypi 4.14.79-v7+ #1159 SMP Sun Nov 4 17:50:20 GMT 2018 armv7l GNU/Linux
-
默认安装好apache2.4 并可以正常访问自己的网站
-
切换到自己的虚拟主机配置文件目录
cd /etc/apache2/sites-available
-
创建文件 www.example.com.conf 可以用000-default.conf复制一份
(cp ./000-default.conf ./www.example.com.conf
) -
文件示例(摘自看不懂的官方文档)#官方文档将多个虚拟主机配置在多个<VirtualHost>中,但是上面的文档将每一个虚拟主机单独写一个配置文件,此处用的是后者
#Ensure that Apache listens on port 80
Listen 80
<VirtualHost *:80>
DocumentRoot "/www/example1"
ServerName www.example1.com
</VirtualHost>
-
使用a2ensite命令添加虚拟主机
a2ensite example.com.conf
-
使用a2dissite命令注销旧的主机
a2dissite example.com
-
重复上面几步删除多个虚拟主机
-
重启apache2
service apache2 reload