Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
nginx+;php+;owncloud index.php/apps/files重写_Php_Nginx_Url Rewriting_Owncloud - Fatal编程技术网

nginx+;php+;owncloud index.php/apps/files重写

nginx+;php+;owncloud index.php/apps/files重写,php,nginx,url-rewriting,owncloud,Php,Nginx,Url Rewriting,Owncloud,目前我经常搞砸nginx 我确实基于nginx将自己的云从托管解决方案移动到自己的VPS 经过一些问题,现在它运行良好,但有一件事我不能投入 调用:owncloud.domain.tld::OK单击“文件图标”,其中 实际重定向到当前视图,但URL应更改为: owncloud.domain.tld/index.php/apps/files::失败 因为nginx(或介于两者之间的东西)将“index.php/apps/files”转换为“index.php/apps/index.php”。。。上

目前我经常搞砸nginx

我确实基于nginx将自己的云从托管解决方案移动到自己的VPS

经过一些问题,现在它运行良好,但有一件事我不能投入

调用:owncloud.domain.tld::OK单击“文件图标”,其中 实际重定向到当前视图,但URL应更改为: owncloud.domain.tld/index.php/apps/files::失败

因为nginx(或介于两者之间的东西)将“
index.php/apps/files
”转换为“
index.php/apps/index.php
”。。。上面是什么?我怎样才能解决这个问题? 调用“
index.php/apps/gallery
”和其他方法甚至可以很好地工作

nginx文件:

# cloud.xyz.de

server {
    listen *:80;
    server_name cloud.xyz.de;

    server_tokens off;
    root /nowhere;

    rewrite ^ https://$server_name$request_uri permanent;
}

server {
  listen *:443;
  server_name cloud.xyz.de;

  access_log /var/log/nginx/cloud_access.log;
  error_log /var/log/nginx/cloud_error.log;

  client_max_body_size 10G; # set max upload size
  fastcgi_buffers 64 4K;

  rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect;
  rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect;
  rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect;
  rewrite ^/apps/calendar/caldav.php /remote.php/caldav/ last; # this was injected after some reading in the WWW
  rewrite ^/apps/contacts/carddav.php /remote.php/carddav/ last; # this was injected after some reading in the WWW
  rewrite ^/apps/([^/]*)/(.*\.(css|php))$ /index.php?app=$1&getfile=$2 last; # this was injected after some reading in the WWW
  rewrite ^/remote/(.*) /remote.php last; # this was injected after some reading in the WWW

  root /var/www/cloud.xyz.de;
  index index.php index.html index.htm;

  error_page 403 /core/templates/403.php;
  error_page 404 /core/templates/404.php;

  ssl on;
  ssl_certificate /etc/ssl/certs/xyz_de.crt;
  ssl_certificate_key /etc/ssl/private/xyz_de.key;
  ssl_protocols  SSLv3 TLSv1 TLSv1.2;
  ssl_ciphers AES:HIGH:!ADH:!MD5;
  ssl_prefer_server_ciphers   on;

  location = /robots.txt {
    allow all;
    log_not_found off;
    access_log off;
  }

  location ~ ^/(data|config|\.ht|db_structure\.xml|README) {
    deny all;
  }

  location / {
    # The following 2 rules are only needed with webfinger
    rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
    rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;

    rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
    rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;

    rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;

    try_files $uri $uri/ index.php;
  }

  location ~ ^(.+?\.php)(/.*)?$ {
    try_files $1 = 404;

    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$1;
#    fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $2;
    fastcgi_param HTTPS on;
    fastcgi_intercept_errors on; # this was injected after some reading in the WWW
    fastcgi_index index.php; # this was injected after some reading in the WWW
    fastcgi_pass 127.0.0.1:9000;
  }

  # Optional: set long EXPIRES header on static assets
  location ~* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
    expires 30d;
    # Optional: Don't log access to assets
    access_log off;
  }
}

这不是什么大事。但我现在搜索了几个小时,不知道在哪里搜索。

你看过官方的owncloud/nginx文档吗:嘿,RandolphCarter,是的,我看过。好几次。因为它已经工作了好几个星期了,所以忘了给我发帖子。。现在不要说有什么不同了^^谢谢你的回复。