Я тороплюсь с скудной поддержкой и документацией для сервера Ubuntu 15.04. хотя этого и следовало ожидать от версии, отличной от LTS.
У меня есть Nginx, обслуживающий Owncloud, который называется example.com.conf
в доступных сайтах и с символической ссылкой на сайты с поддержкой. OwnCloud обслуживается с того же сервера, что и NGinx, с проверенными сертификатами SSL.
Проблема, с которой я сталкиваюсь, и которая меня озадачивает в течение нескольких дней, заключается в том, как настроить NGinx, чтобы он продолжал работать без проблем (без проблем) и обратный прокси-сервер для приложения Node.js, работающего на 192.168.0.24:4000 в том же домене. . Я хочу, чтобы оба обслуживались в одном домене (т.е. example.com
с приложением Node.js, выступающим в роли /
и OwnCloud как /owncloud
. Насколько я понимаю, Owncloud делает это сам из своего config.php
файл?
<?php
$CONFIG = array (
'instanceid' => '***********',
'passwordsalt' => '***************************',
'secret' => '****************************************',
'trusted_domains' =>
array (
1 => 'example.com',
),
'datadirectory' => '/shared/owncloud/data',
'overwrite.cli.url' => 'https://example.com/owncloud',
......
Я предполагаю, что нижняя строка текста находится над записью URL-адреса в / owncloud, поскольку я не могу найти намека на это в .conf
в sites-available/enabled
.
upstream php-handler {
server 127.0.0.1:9000;
server unix:/var/run/php5-fpm.sock;
}
server {
listen 80;
server_name 192.168.0.23 localhost example.com;
return 301 https://$server_name$request_uri; # enforce https
}
server {
listen 443 ssl;
server_name 192.168.0.23 localhost example.com;
# Add headers to serve security related headers
add_header Strict-Transport-Security max-age=15768000;
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
ssl_certificate /etc/nginx/certs/example.crt;
ssl_certificate_key /etc/nginx/certs/example.key;
# Path to the root of your installation
root /var/www/owncloud;
client_max_body_size 10G; # set max upload size
fastcgi_buffers 64 4K;
# ownCloud blacklist
location ~ ^/owncloud/(?:\.htaccess|data|config|db_structure\.xml|README) {
deny all;
error_page 403 = /owncloud/core/templates/403.php;
}
location / {
proxy_pass http://192.168.0.24:4000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /owncloud/ {
error_page 403 = /owncloud/core/templates/403.php;
error_page 404 = /owncloud/core/templates/404.php;
rewrite ^/owncloud/caldav(.*)$ /remote.php/caldav$1 redirect;
rewrite ^/owncloud/carddav(.*)$ /remote.php/carddav$1 redirect;
rewrite ^/owncloud/webdav(.*)$ /remote.php/webdav$1 redirect;
rewrite ^(/owncloud/core/doc[^\/]+/)$ $1/index.html;
# The following rules are only needed with webfinger
rewrite ^/owncloud/.well-known/host-meta /public.php?service=host-meta last;
rewrite ^/owncloud/.well-known/host-meta.json /public.php?service=host-meta-json last;
rewrite ^/owncloud/.well-known/carddav /remote.php/carddav/ redirect;
Я пробовал все, что мог придумать, чтобы решить эту проблему, но не могу найти способ обслуживать OwnCloud и обратный прокси-сервер в одном домене. Должен ли я иметь отдельный .conf
файл? Я в тупике.