使用lnmp安装Nextcloud出现404问题解决方法

1 篇文章 0 订阅
1 篇文章 0 订阅

最新消息

特大消息特大消息,由于答主解决不了后续出现的WEBDAV接口错误问题,因此更改了安装方式=====》DOCKER!
装完之后感慨一下,docker大法真好。

参考教程
1、烂泥:个人网盘nextcloud的docker化搭建
2、wonderfall/nextcloud 据说比官网好用的环境,可惜不带Collabora Online,还需要手动安装

安装过程

安装好LNMP安装包后,测试可用,然后将nextcloud文件夹放到 /home/wwwroot/下,并通过lnmp vhost add 添加了新的虚拟主机。/usr/local/nginx/conf/vhost 中是刚设定好的虚拟主机配置文件,设定好端口以后以为万事大吉,谁知一堆404和403拦住了我的脚步。

尝试过程

输入网址,自动跳转到http://MyAddress/index.php中,这个时候弹出了系统配置页面,可是配置完成后直接跳转到404页面http://MyAddress/index.php/apps/files,我这个PHP小白还很纳闷,不一般路径都不带index.php么,到底什么情况。
查了很多钟解决方法,先后解决了文件夹的组和用户问题,PHP配置问题,添加了伪静态规则……
可是输入网址,还是熟悉的404。

其中有一次,使用了隐藏index.php大法

location / {
     if (!-e $request_filename){
          rewrite ^/(.*)$ /index.php/$1 last;
     }
}

直接访问http://MyAddress/login.php可以展示出页面,但是点击却没反应。发现是js之类的路径中间带那个万恶的index.php,卒。

最终解决(暂时)

后来终于综合几篇,找到了一种勉强可用的解决思路(因为强迫症想去掉路径中的index.php)。

下面的方法可以使带有index.php的路径正常访问

主要修改两个文件,pathinfo.conf enable-php.conf,当然,也可以修改vhost的配置文件,去掉引用enable-php.conf,并且将下面两段话放到yourwebsite.conf中。

1、enable-php.conf
删除原来location中的 (/|$) 注释掉try_files,添加include pathinfo.conf

location ~ [^/]\.php
{
#    try_files $uri =404;
   fastcgi_pass  unix:/tmp/php-cgi.sock;
   fastcgi_index index.php;
   include fastcgi.conf;
   include pathinfo.conf;
}

2、pathinfo.conf
修改try_files

fastcgi_split_path_info ^(.+?\.php)(/.*)$;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO       $path_info;
#try_files $fastcgi_script_name =404;
try_files $uri $uri/ /index.php$args;

发表出来,一是做个记录,二是如果有路过大神能解答我为什么去不掉index.php也行,谢谢各位观看啦。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yomo127

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值