CabloyJS也支持采用Apache
服务器作为反向代理,配置步骤如下:
1. 项目配置
CabloyJS默认采用Nginx
,如果要使用Apache
,那么需要在项目配置中进行标明
{project}/src/backend/config/config.prod.js
- 1module.exports = appInfo => {
- 2 const config = {};
- 3 ...
- 4 config.proxyProvider = 'apache';
- 5 ...
- 6};
2. 启用Apache模块
使用a2enmod
命令启用Apache模块,或者直接在httpd.conf
文件中启用(删除注释字符#
即可)
/etc/apache2/httpd.conf
- 1LoadModule proxy_module libexec/apache2/mod_proxy.so
- 2LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
- 3LoadModule proxy_wstunnel_module libexec/apache2/mod_proxy_wstunnel.so
- 4LoadModule remoteip_module libexec/apache2/mod_remoteip.so
3. 虚拟主机配置
/etc/apache2/extra/httpd-vhosts.conf
- 1<VirtualHost *:80>
- 2 ServerAdmin webmaster@localhost
- 3 DocumentRoot "/path/to/project/dist/web"
- 4 ServerName localhost
- 5 ServerAlias localhost
- 6 ErrorLog "/private/var/log/apache2/localhost-error_log"
- 7 CustomLog "/private/var/log/apache2/localhost-access_log" common
- 8
- 9 <Directory "/path/to/project/dist/web">
- 10 Options FollowSymLinks Multiviews
- 11 MultiviewsMatch Any
- 12 AllowOverride None
- 13 Require all granted
- 14 </Directory>
- 15
- 16 ProxyRequests Off
- 17 ProxyPreserveHost On
- 18
- 19 RemoteIPHeader X-Forwarded-For
- 20 RemoteIPInternalProxy 127.0.0.1
- 21
- 22 RequestHeader add X-Forwarded-Proto "http"
- 23 RequestHeader add X-Apache-Proxy "true"
- 24
- 25 ProxyPass /api http://127.0.0.1:7102/api
- 26 ProxyPassReverse /api http://127.0.0.1:7102/api
- 27 ProxyPass /socket.io ws://127.0.0.1:7102/socket.io
- 28 ProxyPassReverse /socket.io ws://127.0.0.1:7102/socket.io
- 29
- 30</VirtualHost>
评论: