在apache2的主文件中引入需要加载的模块:
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module /usr/lib/apache2/modules/mod_proxy_wstunnel.so
在/etc/apache2/sites-available 文件夹下建立test.conf
root@node001:/etc/apache2/sites-available# cat test-default.conf
#<VirtualHost *:80>
# ServerName test.u.com
# ServerAdmin webmaster@localhost
# DocumentRoot /var/www/html/test
# ErrorLog ${APACHE_LOG_DIR}/error.log
# CustomLog ${APACHE_LOG_DIR}/access.log combined
#
#</VirtualHost>
<VirtualHost *:80>
ServerName test.honvu.com
ProxyVia On
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
#拒绝下面所有的ip访问
#Order allow,deny
#Allow from all
#Deny from 14.131.114.86
#Deny from 192.168.0.0/24
#运行下面的ip可以进行访问
Options All
AllowOverride None
Order Deny,Allow
Deny From all
#Allow From 192.168.0.0/24
Allow From 14.131.114.86
#Allow From 59.37.x.x/28
Require all granted
</Proxy>
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
<Location />
Require all granted
</Location>
ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
</VirtualHost>
上面经过实际测试通过
检查语法:
apachectl configtest
添加站点:
a2ensite test-default.conf
重启apache2
systemctl restart apache2