我想向我的 postgREST 网络服务器发出 https 请求,该服务器在设计上不支持 https。我花了几天时间我不知道更多...
我的设置
- 我的服务器在 CentOS 7.9.2009 上运行
- 我有一个网站域,它使用 Wordpress 来提供我的内容
home/myuser/public_html
- 我在运行在端口 3000 上的服务器上设置了 PostgREST 7.0.1
- 我正在运行 Apache/2.4.51 (cPanel)
我的问题
- 以下请求可以正常工作:
http://my-domain.com:3000/my_db_table
- 我想运行相同的请求,例如:
https://my-domain.com/api/my_db_table
- 我的 Apache 配置位于“包含”文件中,似乎已加载(当我故意在此文件中输入错误语法时会发生错误),它看起来像这样:
<VirtualHost *:443>
DocumentRoot /
ServerName my-domain.com
ServerAlias my-domain
ErrorLog /home/myuser/public_html/api/error.log
CustomLog /home/myuser/public_html/api/access.log combined
SSLEngine on
SSLUseStapling off
SSLCertificateFile /etc/ssl/certs/server.my-domain.com.crt
SSLCertificateKeyFile /etc/ssl/private/server.my-domain.com.key
<Location /api/ >
ProxyPreserveHost On
ProxyPass http://localhost:3000/
ProxyPassReverse http://localhost:3000/
RequestHeader set X-Forwarded-Port "443"
RequestHeader set X-Forwarded-Proto "https"
</Location>
</VirtualHost>
- 跑步
httpd -t
回报Syntax OK
- 更改后我运行
sudo systemctl restart httpd
- 当我尝试执行一个请求时,例如
curl -i https://my-domain.com/api/my_db_table
我被重定向到我的 Wordpress 网站的 404 页面 - 我的
error.log
apache 配置文件不包含任何错误(它包含装订错误,我通过SSLUseStapling off
在我的配置中添加该行来解决)
我不知道该怎么办了。而且因为我没有任何错误日志,我什至不知道如何开始调试它。如果有人可以提供给我任何提示,我会很高兴。