Ubuntu服务器Odoo实例WAN访问跳转至商业网站,如何停止Apache转发?
解决Apache重定向导致Odoo无法通过WAN访问的问题
嘿,我猜你是在给Odoo配置SSL证书的时候,不小心让Apache把广域网的请求都重定向到公司官网了对吧?别慌,咱们一步步定位并停止这个错误的转发行为:
1. 先临时恢复访问:禁用可疑的站点配置
首先,咱们先找到Apache里可能搞事情的站点配置,临时关掉它试试:
- 先列出所有Apache已经启用的站点:
sudo a2dissite --list - 你会看到一堆配置文件名,找和你的
xxx.dyndns.org域名相关的那个(比如your-domain.dyndns.org.conf),然后禁用它:sudo a2dissite your-domain.dyndns.org.conf - 最后重启Apache让配置生效:
sudo systemctl restart apache2
这时候再用外网访问你的Odoo地址,应该就能正常打开了。
2. 排查并修改错误的重定向规则
如果上面的操作管用,那问题肯定出在那个被禁用的站点配置里。咱们打开它看看:
sudo nano /etc/apache2/sites-available/your-domain.dyndns.org.conf
重点找这两类规则:
- 有没有类似这样的
Redirect指令:Redirect permanent / https://your-official-website.com/ - 或者带
RewriteRule的重写规则:RewriteEngine On RewriteRule ^(.*)$ https://your-official-website.com/$1 [R=301,L]
找到之后,要么直接删掉这些规则,要么在前面加个#把它们注释掉,保存文件后再重启Apache:
sudo systemctl restart apache2
3. 检查全局配置(如果站点配置里没找到)
要是站点配置里没发现重定向规则,那咱们再看看Apache的全局配置:
- 打开
/etc/apache2/apache2.conf,还有/etc/apache2/conf-available/目录下的所有文件,找找有没有全局的Redirect或RewriteRule指向你的官网。 - 找到后同样注释或删除,然后重启Apache。
4. (可选)正确配置Odoo的SSL反向代理
如果你本来是想给Odoo加上SSL访问,而不是转发到官网,那搞定上面的问题后,可以重新配置Apache作为反向代理,正确指向Odoo的8069端口。比如在你的dyndns域名的站点配置里写:
<VirtualHost *:443> ServerName your-domain.dyndns.org SSLEngine On SSLCertificateFile /path/to/your/ssl-cert.pem SSLCertificateKeyFile /path/to/your/ssl-privkey.pem # 把请求转发给本地的Odoo服务 ProxyPass / http://localhost:8069/ ProxyPassReverse / http://localhost:8069/ </VirtualHost>
记得启用proxy和proxy_http模块:
sudo a2enmod proxy proxy_http sudo systemctl restart apache2
这样就能通过HTTPS正常访问你的Odoo实例了。
内容的提问来源于stack exchange,提问作者Paul M
相关产品推荐
相关产品推荐

