Nginxユニットを使用するためにApache2で単純なリバースプロキシを設定したいと思います。
<Location /nextcloud>
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
</Location>
ProxyPass /nextcloud http://127.0.0.1:7788
ProxyPassReverse /nextcloud http://127.0.0.1:7788
Nginxデバイスの設定が成功しました。
curl -X DELETE --unix-socket /var/run/control.unit.sock http://localhost/config/
curl -X PUT --data-binary @config.json --unix-socket /var/run/control.unit.sock http://localhost/config/
tail -n 20 /var/log/unit.log
ここでのNginx Unit Nextcloudの設定例:https://unit.nginx.org/howto/nextcloud/
期待どおりに動作しますが、ユニットアプリが "/nextcloud"サブフォルダから提供されることをNginxに通知することはできません。 https://localhost/nextcloud を呼び出すと、https://localhost/index.php にリダイレクトされます。
私はこれがユニットパス内で問題になる可能性があると思います。
"routes": [
{
"match": {
"uri": [
"/build/*",
"/tests/*",
"/config/*",
"/lib/*",
"/3rdparty/*",
"/templates/*",
"/data/*",
"/.*",
"/autotest*",
"/occ*",
"/issue*",
"/indie*",
"/db_*",
"/console*"
]
},
"action": {
"return": 404
}
},
{
"match": {
"uri": [
"/core/ajax/update.php*",
"/cron.php*",
"/index.php*",
"/ocm-provider*.php*",
"/ocs-provider*.php*",
"/ocs/v1.php*",
"/ocs/v2.php*",
"/public.php*",
"/remote.php*",
"/status.php*",
"/updater*.php*"
]
},
"action": {
"pass": "applications/nextcloud/direct"
}
},
{
"match": {
"uri": "/ocm-provider*"
},
"action": {
"pass": "applications/nextcloud/ocm"
}
},
{
"match": {
"uri": "/ocs-provider*"
},
"action": {
"pass": "applications/nextcloud/ocs"
}
},
{
"match": {
"uri": "/updater*"
},
"action": {
"pass": "applications/nextcloud/updater"
}
},
{
"action": {
"share": "/var/www/nextcloud-test/nextcloud-files$uri",
"fallback": {
"pass": "applications/nextcloud/index"
}
}
}
],
すでにnginxユニットホスティングアプリケーションをサブフォルダに送信した経験がある人はいますか?
Nextcloud 賢明な設定が調整されました。
'overwrite.cli.url' => 'https://localhost/nextcloud',
'overwriteprotocol' => 'https',
'overwritehost' => 'localhost',
'overwritewebroot' => '/nextcloud',