情况
我已经在客户端网站上实现了kirby Auth插件的修改版本,它基本上是这样工作的。
content/extranet/login/login.fr.txt,或者作为一个例子,content/extranet/bastian/bastian.fr.txt,这是修改后的Auth插件所要寻找的,它找到这个文件并读取它,检查密码和用户登录。这一切在我的本地MAMP服务器上都很好,就像你在屏幕截图中看到的那样,但是在生产服务器http://www.driving-evolution.com上,这不起作用,我不知道为什么,我已经在很多地方看过了,我不明白发生了什么。(它在暂存服务器上也不工作)
在生产服务器上,无论输入一个好的还是坏的登录,表单都不会显示任何错误消息,也不会记录用户。一开始我以为这可能是因为我的bcrypt安装,但事实并非如此,因为我禁用了它(并且使用了普通的密码),而且它仍然没有工作。
问题似乎不是来自这里的插件,而是来自我的活动PHP堆栈和本地php堆栈之间的区别(我猜是在php会话处理上)。
远程PHP为5.3.3
以下是两个安装的CURL示例输出:
工作(当地)
curl -d "username=test&password=test" -i devo.loc/fr/login
HTTP/1.1 302 Found
Date: Tue, 27 May 2014 12:59:49 GMT
Server: Apache/2.2.25 (Unix) mod_ssl/2.2.25 OpenSSL/0.9.8y DAV/2 PHP/5.5.3
X-Powered-By: PHP/5.5.3
Set-Cookie: PHPSESSID=9249a942248a2382d8eb10090bf5d825; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: authFrontend=mc06csp25; expires=Wed, 28-May-2014 12:59:49 GMT; Max-Age=86400; path=/
Set-Cookie: PHPSESSID=b38ec0b342356c2c38778e4a6925f085; path=/
Set-Cookie: authFrontend=8qyyn; expires=Wed, 28-May-2014 12:59:49 GMT; Max-Age=86400; path=/
Location: http://devo.loc/fr/extranet
X-UA-Compatible: IE=edge
Vary: Accept-Encoding
Content-Length: 0
Content-Type: text/html; charset=utf-8失败(远程)
curl -d "username=test&password=test" -i www.driving-evolution.com/fr/login
HTTP/1.1 200 OK
Date: Tue, 27 May 2014 13:01:32 GMT
Server: Apache
X-Powered-By: PHP/5.3.3
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: PHPSESSID=6j9o1i4djetojtbg444i51efm7; path=/
Vary: Accept-Encoding
X-UA-Compatible: IE=edge
Connection: Keep-Alive, close
Transfer-Encoding: chunked
Content-Type: text/html有用LINKS
远程PHPVER:http://www.driving-evolution.com/phpver.php
当它在本地工作时的截图


希望有人能帮我这个忙!如果想要更多的信息,我会给你的。
发布于 2014-06-02 09:33:08
事实证明,这是CMS的一个问题,文件缓存是打开的,而不是忽略“登录”、“注销”和“外联网”文件(所有这些文件都与客户区域相关),必须添加:
c::set('cache.ignore', array('api', 'sitemap', 'extranet', 'account', 'login', 'logout'));我的kirby配置(api和sitemap是不相关的)。
这解决了登录表单缓存时的问题,因此不会触及服务器上的任何内容。现在表单没有缓存。
https://stackoverflow.com/questions/23990954
复制相似问题