

背景：

ラズパイにUbuntu18.04をインストールしてその中にdockerでwordpressをインストールしました。

dockerでwordpressをインストールした参考サイト  
<https://docs.docker.com/samples/wordpress/>

インストールして家のwifiではうまくつながってます、cssもちゃんとロードできています。

次にNginxでドメインとリンクしました、しかしドメインから訪問する時に下記エラーが出て来ました：

[code]

    /wp-admin/install.php?step=1:8          GET http://localhost:8111/wp-includes/css/dashicons.min.css?ver=5.9 net::ERR_CONNECTION_REFUSED
    /wp-admin/install.php?step=1:9          GET http://localhost:8111/wp-includes/css/buttons.min.css?ver=5.9 net::ERR_CONNECTION_REFUSED
    
[/code]

つまり`localhost`を探してると分かります。

Nginxの設定が原因かもしれません。  
簡単な設定ですが、下記になります：

[code]

    server {
            listen 80;
            listen [::]:80;
    
            server_name my.domain.com;
    
            location / {
                    proxy_pass http://localhost:8111;
            }
    }
    
    
[/code]

どうしたら直せるでしょうか。


CC BY-SA 4.0
2022-02-19T10:43:24.333
86450
2022-02-24T11:11:23.867
2022-02-19T11:10:14.503
41314
41314
question
ubuntu docker wordpress nginx
dockerでインストールしたwordpressがドメインで訪問した時にcssが読み込めない


以下の記述で localhost を指定しているのが原因に見えます。

>
[code]

>     location / {
>         proxy_pass http://localhost:8111;
>     }
>  
[/code]


CC BY-SA 4.0
2022-02-19T11:10:48.260
86452
2022-02-19T11:10:48.260
3060
86450
answer


質問文のメッセージより，インストールページにいると仮定します．

nginxで`proxy_pass`を使用する場合，別回答でも指摘されている通り， **proxy_passで使用したホスト名でリクエストが上書き**
されます．

ただしく元のリクエストからHostヘッダーを引き続きたい場合，`proxy_set_header`で本来のリクエストヘッダーを引き渡します．

[code]

    proxy_set_header Host       $proxy_host;
    
[/code]

  * [リバースプロキシ化したnginxでHostヘッダを素通しする設定 -- ぺけみさお](https://www.xmisao.com/2013/10/17/nginx-proxy-host-header.html)
  * [Module ngx_http_proxy_module](http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header)

なお，`wordpress:latest`はApache HTTPDでPHPを動作させていますが，多くの場合nginxと併用する際はphp-
fpmが好まれます(お好みで) ．


CC BY-SA 4.0
2022-02-19T15:30:28.193
86462
2022-02-19T15:37:42.280
2022-02-19T15:37:42.280
2376
2376
86450
answer