【发布时间】:2020-01-26 12:27:11
【问题描述】:
TLDR:配置nginx监听80端口并使用
- 如果
/api,则在localhost:8081上表达JS - 如果
/blog,wordpress/apache2 在localhost:8082 - 其他角度服务器
localhost:8080angular 和 express 服务器正常工作,但需要配置 wordpress/apache。
详细一点, 我在同一个 VPS 上安装了以下内容:
-
angular端口8080上的前端 -
expressJS端口8081上的后端 - WordPress 在端口 8082 上的
apache2上运行
目前,我正在使用 nginx 来操作请求,并且配置是
server {
listen 443;
ssl on;
ssl_certificate /home/user/.ssh/ssl/ssl.crt;
ssl_certificate_key /home/user/.ssh/ssl/ssl.key.txt;
root /var/www/html;
index index.html index.htm index.nginx-debian.html index.php;
server_name _;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
}
location /api {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8081;
proxy_read_timeout 90;
}
}
现在我需要在mysite.com/blog 上托管我的博客。所以我在 nginx 配置中添加了以下内容。
location /blog {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8082;
proxy_read_timeout 90;
}
现在当我转到example.com/blog 时,它会重定向到example.com:8082/blog。如何同时配置nginx和apache?
PS:只要 wordpress 工作,Apache 就不是必需的。但我喜欢保留 nginx
PPS:我已将 nginx 配置为通过重定向 301 将所有 http 请求转发到 https://example.com/
【问题讨论】:
标签: php angular wordpress apache nginx