我正在开发CakePHP 2项目.它最初从2.0.x开始,然后最近迁移到2.1.0.在整个开发过程中,我一直收到以下错误消息.
它不可预测地弹出页面顶部.它可能是我只是在查看不同的页面,甚至在我向数据库添加记录之后(但记录正确保存).
Warning:
SplFileInfo::openFile(/var/www/cake_prj/app/tmp/cache/persistent/cake_core_cake_console_):
failed to open stream:
Permission denied in
/var/www/cake_prj/lib/Cake/Cache/Engine/FileEngine.php on line 293
Run Code Online (Sandbox Code Playgroud)
我以递归方式将tmp文件夹的所有者和组设置为apache,并仍然收到该消息.另外,我然后递归地设置读取,写入和执行所有权限(chmod 777).错误消息仍然会弹出.
即使在更改了所有者,组和权限之后,相关文件仍然存在:
cake_prj/app/tmp/cache/persistent/cake_core_cake_console_
Run Code Online (Sandbox Code Playgroud)
将其所有者和组设置回root,并将其权限设置回默认值.
什么可能导致这个问题?有没有办法确保每次生成此文件时,它始终都是apache:具有读/写/执行权限的apache?
我需要一种方法来跨 .NET 框架/环境/执行一致地生成给定对象或对象属性子集的唯一 ID,同时最大限度地减少冲突。
例如,给定一个固定对象,例如
public class ExampleObject
{
public string Prop1 { get; set; }
public string Prop2 { get; set; }
public int Prop3 { get; set; }
public decimal Prop4 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我正在考虑将所有值转换为字符串,连接它们,然后使用一些确定性算法来获得所需的结果
// Convert all values to strings and concat
string str1 = "a";
string str2 = "b";
int int1 = 1;
decimal dec1 = 1.2m;
string concatStr …Run Code Online (Sandbox Code Playgroud)