直接访问页面会出现404,但访问其他页面后不会出现404

发布于 2024-10-22 05:46:51 字数 1352 浏览 7 评论 0原文

当尝试访问 http:// 时,我收到消息“在此服务器上找不到请求的 URL /schaak-demo” enkelzijdig.nl/schaak-demo。我尝试多少次并不重要。对于带有 www 的链接也是如此。

当我首先转到 http://enkelzijdig.nl/demo/ ,然后转到第一个链接时段落,它就像一个魅力。此后的每一次它都像魅力一样发挥作用。删除cookie后它仍然有效。关闭浏览器并再次启动后它仍然有效。

怎么会?

我的 .htaccess 看起来像这样

### demo   
RewriteCond $1 !css/  
RewriteCond $1 !sites/  
RewriteCond $1 !skins/   
RewriteCond $1 !config/   
RewriteRule demo/(.*) /demo/php/$1 [L]    

在我的配置文件中我得到了网站 URL,我这样做:

function set_path_to_client_website(){
    $servername = parse_url($_SERVER['SERVER_NAME']);
    $serveruri = parse_url($_SERVER['REQUEST_URI']);
    $_SESSION['host'] = $servername['path'];
    //if string between first and second slash ends with demofolder then add this part of the string to the session[host].
    $pos = strpos(strtolower($serveruri['path']), strtolower(substr(get_demo_folder(),1,-1))); 
    if ($pos > -1){
        $_SESSION['host'] = $servername['path'] . substr(strtolower($serveruri['path']), 0, $pos + strlen(get_demo_folder()) -1);
    } else{
        $_SESSION['host'] = $servername['path'] . '/';
    }
    return $_SESSION['host'];
}

这是足够的信息吗?我迷路了。任何提示表示赞赏。 谢谢。

金·奥尔德斯

I get message "The requested URL /schaak-demo was not found on this server" when trying to go to http://enkelzijdig.nl/schaak-demo. Does not matter how many times i try. Same goes for the link with www.

When i go to http://enkelzijdig.nl/demo/ first, and then to the link from the first paragraph, it works like a charm. Every time after that it works like a charm. After deleting cookies it still works. After closing the browser and starting up again it still works.

How come?

My .htaccess looks like this

### demo   
RewriteCond $1 !css/  
RewriteCond $1 !sites/  
RewriteCond $1 !skins/   
RewriteCond $1 !config/   
RewriteRule demo/(.*) /demo/php/$1 [L]    

In my configfile i get the website-URL, and i do it like this:

function set_path_to_client_website(){
    $servername = parse_url($_SERVER['SERVER_NAME']);
    $serveruri = parse_url($_SERVER['REQUEST_URI']);
    $_SESSION['host'] = $servername['path'];
    //if string between first and second slash ends with demofolder then add this part of the string to the session[host].
    $pos = strpos(strtolower($serveruri['path']), strtolower(substr(get_demo_folder(),1,-1))); 
    if ($pos > -1){
        $_SESSION['host'] = $servername['path'] . substr(strtolower($serveruri['path']), 0, $pos + strlen(get_demo_folder()) -1);
    } else{
        $_SESSION['host'] = $servername['path'] . '/';
    }
    return $_SESSION['host'];
}

Is this enough info? I am lost. Any hint is appreciated.
Thank you.

Kim Alders

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

海夕 2024-10-29 05:46:51

http://enkelzijdig.nl/schaak-demo/(带有尾部斜杠)有效。
您是否尝试将 Options -MultiViews 添加到您的 .htaccess 文件中?

http://enkelzijdig.nl/schaak-demo/ (with trailing slash) works.
Did you try to add Options -MultiViews to your .htaccess file?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文