ubuntu系统下apache配置虚拟主机及反向代理详解
前言
自己有两个域名blogsir.com.cn 和 s7star.cn ,都绑定在了我的腾讯云主机上,还有七星网络安全攻防平台的搭建,这里记录下我搭建虚拟主机和反向代理的过程,下面来一起看看详细的介绍:
配置虚拟主机
$ sudo vi /etc/apache2/sites-available/000-default.conf #DocumentRoot /var/www/html ##注释掉该行 $ cat /etc/apache2/sites-available/000-default.conf|grep -v "#" <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName www.blogsir.com.cn DocumentRoot "/var/www/html/" ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> <VirtualHost *:80> ServerName www.s7star.cn DocumentRoot "/var/www/xx" ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
注1:这里的*指127.0.01
修改host文件,并添加如下
$ sudo vi /etc/hosts 127.0.0.1 www.blogsir.com.cn 127.0.0.1 www.s7star.cn
配置端口反向代理
如果端口不是80,则可以配置反向代理,比如我的ctf.s7star.cn, 开始是通过4000端口来访问的,但不太方便,配置了反向代理后方便很多
反向代理维基上的解释是这样的:它根据客户端的请求,从后端的服务器上获取资源,然后再将这些资源返回给客户端。与前向代理不同,前向代理作为一个媒介将互联网上获取的资源返回给相关联的客户端,而反向代理是在服务器端作为代理使用,而不是客户端。
博客的端口使用4000,使用反向代理后,用户返回80端口的网站,apache会将博客的内容显示给用户,就像用户直接访问4000端口一样。
以下是配置apache的步骤:
1.加载apache模块,使用a2enmod命令加载模块
a2enmod proxy proxy_balancer proxy_http
加载完成后需要使用命令/etc/init.d/apache2 restart
重启服务器
2.配置反向代理功能,进入sites_available,编辑000-default.conf文件,添加如下代码
<VirtualHost *:80> ServerName ctf.s7star.cn DocumentRoot "/var/www/xx/" ErrorLog ${APACHE_LOG_DIR}/ctf_errors.log CustomLog ${APACHE_LOG_DIR}/ctf_accesses.log combined ProxyPass / http://127.0.0.1:4000/ ProxyPassReverse / http://127.0.0.1:4000/ </VirtualHost>
最后重启apache,当你重新打开网页的时候就会跳转到4000端口的博客了
总结
以上就是这文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对安科网的支持。
相关推荐
某些公司会墙特定网站,如果你有一个可访问的域名和服务器,就可以通过nginx反向代理来来解决这些问题。比如现在我们用mirror.example.com镜像www.baidu.com,以下是详细操作。