Я пытаюсь вызвать мой экземпляр rainloop с виртуального хоста, но использую подкаталоги.
rsanchez@babylon:/etc/nginx/vhosts$ more rainloop.conf
location ^~ /webmail {
root /srv/rainloop/public_html;
try_files $uri $uri/ /webmail/index.php?$query_string;
#if (!-e $request_filename) { rewrite ^ /webmail/index.php last; }
access_log /srv/rainloop/logs/access.log;
error_log /srv/rainloop/logs/error.log;
index index.php;
access_log /var/log/nginx/scripts.log scripts;
location ~ \.php$ {
#if (!-f $request_filename) { return 404; }
include fastcgi_params;
#fastcgi_split_path_info ^(.+\.php)(/.+)$; #this line
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /srv/rainloop/public_html/index.php;
}
location ~ /\.ht {
deny all;
}
location ^~ /webmail/data {
deny all;
}
#location ~ /webmail/\.css {
# root /srv/rainloop/public_html;
# add_header Content-Type text/css;
#}
#location ~ /webmail/\.js {
# root /srv/rainloop/public_html;
# add_header Content-Type application/x-javascript;
#}
}
Основным файлом является / etc / nginx / sites-available / default. Отсюда я вызываю код сверху.
upstream zboss {
server unix:/srv/zboss/run/zboss.sock fail_timeout=0;
}
server {
listen 80 default_server;
server_name babylon;
root /var/www/html;
location / {
root /var/www/html;
index index.html;
}
location /static {
alias /srv/zboss/static;
}
location /prot/media {
alias /var/www/uploads/zboss/;
}
location = /favicon.ico { access_log off; log_not_found off; }
location /prot {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header SCRIPT_NAME /prot;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://zboss;
break;
}
}
location /wiki {
include uwsgi_params;
uwsgi_param SCRIPT_NAME /wiki;
#uwsgi_pass unix:///usr/local/share/moin/moin.sock;
uwsgi_pass 127.0.0.1:8080;
uwsgi_modifier1 30;
}
location /cgit {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:85;
}
include vhosts/*.conf;
}
При попытке Http: // Babylon / веб-почты, Я получаю пустую страницу. Проверяя код, я вижу, что мой код не может загрузить HTTP: //babylon/rainloop/v/1.10.5.192/static/js/min/boot.min.js стандарт
Когда я вижу логи nginx, я обнаружил:
2017/09/21 15:32:08 [error] 1737#0: *31774 open() "/var/www/html/rainloop/v/1.10.5.192/static/js/min/boot.min.js" failed (2: No such file or directory), client: 192.168.224.8, server: babylon, request: "GET /rainloop/v/1.10.5.192/static/js/min/boot.min.js?standard HTTP/1.1", host: "babylon", referrer: "http://babylon/webmail"
Но «/var/www/html/rainloop/v/1.10.5.192/static/js/min/boot.min.js» не является реальным местоположением. Реальное местоположение — «/srv/rainloop/public_html/rainloop/v/1.10.5.192/static/js/min/boot.min.js»
Моя настоящая проблема заключается в том, чтобы изменить: / var / www / html для / srv / rainloop / public_html /
Как это решить?
Моя настоящая проблема заключается в том, чтобы изменить: / var / www / html для / srv / rainloop / public_html /
Как это решить?
Попытка преобразования html в символическую ссылку, указывающую на / srv / rainloop / public_html
Публикация комментария как ответа, как мне нужно форматирование
Попробуйте добавить ниже блок также в ваш конфиг
location /rainloop/ {
alias /srv/rainloop/public_html/rainloop/;
}