GET变量中的文件名会中断PHP会话
我有一个MVC框架。每个请求都应该由index.php文件处理。它工作正常,除了请求以一个公共扩展名(如jpg、gif、png)结束。在这种情况下,我的PHP会话将消失 我的htaccess文件如下所示:GET变量中的文件名会中断PHP会话,php,.htaccess,mod-rewrite,redirect,Php,.htaccess,Mod Rewrite,Redirect,我有一个MVC框架。每个请求都应该由index.php文件处理。它工作正常,除了请求以一个公共扩展名(如jpg、gif、png)结束。在这种情况下,我的PHP会话将消失 我的htaccess文件如下所示: php_flag display_errors on RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /projecte
php_flag display_errors on
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /projecten/xxxxxxxx/index.php?route=$1 [L,QSA]
ErrorDocument 403 /errors/403.html
ErrorDocument 404 /errors/404.html
谁能给我一个解决方案
编辑:我的问题在服务器上,在我的本地机器上一切正常,但在在线服务器上出现问题。你能举一个这样的请求的例子,并更详细地解释发生了什么吗?您正被重定向到哪个URL?例如,此URL:。根据htaccess,url应为。这是可行的,但我的疗程结束了。如果我使用(其他未知扩展名),一切正常。
domain.com/file.jpg
是否实际存在于您的服务器上?因为您正在阻止重写存在的文件(!-f
)对不起,我没有提到,但该文件不存在,所以我可以读取GET变量'route',该变量的值为'file.jpg'Hmm,这看起来很奇怪。在这些情况下,您的会话ID是什么?请求的域是否更改?(www.domain.com vs.domain.com)