ubuntu apache设置代理跳转 # 背景 前端使用react框架完成一个项目上线,需要使用apache代理转发接口到本地9093接口 # 过程 1. 启用apache的代理模块 ~~~ # 假设apache2安装在/etc/apache2下 ln -s /etc/apache2/mods-available/proxy.load /etc/apache2/mods-enabled/proxy.load ln -s /etc/apache2/mods-available/proxy_http.load /etc/apache2/mods-enabled/proxy_http.load ~~~ 2. 重启apache ~~~ sudo service apache2 restart ~~~ 3. 配置域名 ~~~ ServerAdmin webmaster@localhost DocumentRoot /var/www/XXX ServerName domain.com # ServerAlias www.domain.com ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined Options Indexes FollowSymLinks MultiViews AllowOverride all Order allow,deny allow from all # rewrite ProxyPass / http://localhost:9093/ ProxyPassReverse / http://localhost:9093/ # ProxyPassMatch ^/api http://www.b.com/ ~~~ # 注意点 假如报错 ~~~ DNS lookup failure for: localhost:9093static returned by .... ~~~ 解决方法是需要在转发路径后面加入/。 正确格式:http://127.0.0.1:9093/ # 拓展 如果需要部门接口进行转发 如需要domian.com/api后面进行转发,则使用 ~~~ ProxyPassMatch ^/api http://www.b.com/ ~~~