我正在尝试设置 nginx docker 容器,它与 2 个 wordpress 站点容器位于同一网络上。这是 nginx.conf 文件
worker_processes 512;
events {
worker_connections 1024;
}
http {
upstream informatica_site {
server InformaticaSite:80;
}
upstream informatica_blog {
server InformaticaBlog:80;
}
server {
listen 80;
server_name informaticasystems.xom;
location / {
proxy_pass http://informatica_site;
}
}
server {
listen 80;
server_name blog.informaticasystems.xom;
location / {
proxy_pass http://informatica_blog;
}
}
}
主机文件
127.0.0.1 informaticasystems.xom
127.0.0.1 blog.informaticasystems.xom
但是当我撰写时,JavaScript 文件未正确加载
他们正在尝试访问 proxy_pass 而不是实际的服务器名称。
澄清一下,nginx 和 wordpress 站点都在同一网络上的 docker 容器中,我正在本地计算机(在 docker 之外)中从浏览器访问
version: '3'
services:
InformaticaSite:
image: wordpress
restart: always
environment:
WORDPRESS_DB_HOST: ******
WORDPRESS_DB_USER: ******
WORDPRESS_DB_PASSWORD: ******
WORDPRESS_DB_NAME: ******
volumes:
- ./informatica_site:/var/www/html
ports:
- "8081:80"
networks:
- informatica_network
InformaticaBlog:
image: wordpress
restart: always
environment:
WORDPRESS_DB_HOST: ******
WORDPRESS_DB_USER: ******
WORDPRESS_DB_PASSWORD: ******
WORDPRESS_DB_NAME: ******
volumes:
- ./informatica_blog:/var/www/html
ports:
- "8082:80"
networks:
- informatica_network
informatica_site_db:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: ******
MYSQL_DATABASE: ******
MYSQL_USER: ******
MYSQL_PASSWORD: ******
volumes:
- ./mysql_site_data:/var/lib/mysql
networks:
- informatica_network
informatica_blog_db:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: ******
MYSQL_DATABASE: ******
MYSQL_USER: ******
MYSQL_PASSWORD: ******
volumes:
- ./mysql_blog_data:/var/lib/mysql
networks:
- informatica_network
nginx:
image: nginx
restart: always
volumes:
- ./nginx/nginx.conf:/etc/nginx/nginx.conf
ports:
- "80:80"
networks:
- informatica_network
networks:
informatica_network:
根据我能够搜索到的内容,proxy_pass 不应该这样做,我是 nginx 新手,所以可能错过了一些东西。
您可以尝试使用以下
nginx.conf
:
worker_processes 512;
events {
worker_connections 1024;
}
http {
upstream informatica_site {
server InformaticaSite:80;
}
upstream informatica_blog {
server InformaticaBlog:80;
}
server {
listen 80;
server_name informaticasystems.xom;
location / {
proxy_pass http://informatica_site;
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-Host $server_name;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
server {
listen 80;
server_name blog.informaticasystems.xom;
location / {
proxy_pass http://informatica_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-Host $server_name;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}