我正面临一种非常奇怪的行为,希望得到您的帮助以及解决方案或解释。
我确实在页面上使用了一个非常简单的代码:
// start a session
if( !session_id() )
session_start('');
// write current url in session to prepare redirect after login
$_SESSION['url_before_login'] = $_SERVER['REQUEST_URI'];
在同一页面上,我确实加载了一个当前缺少的图标。因此,在浏览器的控制台上,我收到以下错误消息:
GET https://my.domain.ltd/assets/favicon/apple-touch-icon.png [HTTP/2 404 Not Found 141ms]
这可以。但是,奇怪的行为是,我的变量$_SESSION['url_before_login']
没有$_SERVER['REQUEST_URI']
我的页面,而是$_SERVER['REQUEST_URI']
丢失的文件。当我输出时,$_SESSION['url_before_login']
我得到/assets/favicon/apple-touch-icon.png
而不是/folder/sub-folder/
. 如果没有加载错误并且没有丢失文件,则会$_SESSION['url_before_login']
向我显示正确的 URI。
有谁知道这种行为并且有一个解决方案如何解决这个问题(除了确保没有丢失的文件;-))。