宝塔用户_duqnvv 发表于 2020-12-14 19:04:33

【已回应】windows下nginx后台404

                        我一直用的是Apache,今天改Nginx后,后台出现404 打不开、
发现原因应该是伪静态规则问题。

后台地址 https://www.songtastm.com/songtaste1214.php

目前用的伪静态 后台打不开。

if (!-f $request_filename){
    set $rule_0 1$rule_0;
}
if (!-d $request_filename){
    set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
    rewrite ^/(.*)$ /index.php?/$1 last;
}

在论坛搜索了一下,和我一样的问题有很多人。
我也尝试了楼主的回答
是因为开启了防跨站攻击,网站》站点修改》网站目录》防跨站攻击(open_basedir) 关闭后重启服务器即可
关闭还是不行。确实不是伪静态问题。请问什么问题?百度加宝塔论坛的这样问题不下几百人求解。
目前还开的是专业版VIP,如果这问题解决不了会流失很多使用Nginx环境的会员吧

我也本地搭建了网站,测试还是后台打不开,404,伪静态换了几十次编写与转换。不应该是伪静态问题。

                        

宝塔用户_duqnvv 发表于 2020-12-14 19:28:49

上面的伪静态是我Apache用的通过宝塔转换的,只是后台404
下面是程序官网给的Nginx伪静态规则。用上整个网站都打不开,
我贴出来给领导研究。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
      <rewrite>
      <rules>
          <rule name="Imported Rule 1">
             <match url="^(.*)$" ignoreCase="false" />
             <conditions logicalGrouping="MatchAll">
               <add input="{SCRIPT_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
               <add input="{SCRIPT_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
             </conditions>
             <action type="Rewrite" url="index.php/{R:1}" />
          </rule>
      </rules>
      </rewrite>
    </system.webServer>
</configuration>

堡塔技术阿宏 发表于 2020-12-14 20:24:10

您好,
404:指访问的页面不存在或找不到文件路径
此处需要区分访问的页面是静态页面(html)还是动态页面(php等)

如果是静态页面访问404,那么可能是文件路径错误,或者是站点目录绑定错误,
这时候检查文件路径是否正确,站点域名绑定目录是否正确即可

如果是动态页面404,那么可能是伪静态设置错误,需要检查一下伪静态是否设置正确
同时如果php没有正常启动或运行并发过高,那么也可能会导致站点404
这时候需要检查php运行状态 看是否是正常运行的

沐沐 发表于 2020-12-15 09:22:05

宝塔用户_duqnvv 发表于 2020-12-14 19:28
上面的伪静态是我Apache用的通过宝塔转换的,只是后台404
下面是程序官网给的Nginx伪静态规则。用上整个网 ...

这是IIS的伪静态,请更换至nginx伪静态后重试
页: [1]
查看完整版本: 【已回应】windows下nginx后台404