Nginx
Nginx proxy_pass 到 wordpress docker 容器
大家好,如果我犯了一個基本的錯誤,我很抱歉,但我真的迷路了。
我已經設置了我的 Ubuntu 16.04 伺服器是 Nginx(不在 docker 容器中,在主機上執行)和 wordpress(在 docker 容器中)。
Docker Hub Wordpress repo:(我不能發布超過兩個連結,但它是官方的 Wordpress repo)
經過一些配置,我設法讓 nginx 和 wordpress 容器執行起來。當我通過原始 IP 地址和埠訪問 wordpress 網站時,它工作正常。但是,當我從 nginx 到容器執行 proxy_pass 時,我的 wordpress 網站似乎失去了所有的 css。具有諷刺意味的是,頁面仍然有點載入。
這是一個範例:(圖像的超連結)
http://$$ IP Address $$:51080/wp-admin/install.php
http://example.com/wp-admin/install.php
網站可用
upstream example.com { server localhost:51080; } server { listen 80; server_name example.com; location / { proxy_pass http://localhost:51080; } }
碼頭工人執行命令
docker run --name example.com -d -v /docker/example.com:/var/www/html wordpress
/etc/hosts(我在文件中添加了以下行)
[IP address] example.com
感謝您的任何幫助!
編輯:
- /var/log/nginx/error.log - 是空的(是的,我已經檢查過了,它正在記錄到這個文件)
- /var/log/nginx/access.log
日誌條目:
<IP Address> - - [11/Mar/2017:11:33:35 -0500] "GET /wp-admin/install.php HTTP/1.1" 200 11144 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/602.4.8 (KHTML, like Gecko) Version/10.0.3 Safari/602.4.8"
設置一些標頭可能會有所幫助,以便上游知道正確的前端伺服器名稱。有關更多資訊,請參閱此文件。
例如,我使用:
proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Accept-Encoding ""; proxy_set_header Proxy "";
此外,請檢查您的 HOME 和 SITEURL 設置是否正確。有關詳細資訊,請參閱此文件。