我有这个文件,favicon.ico。 这实际上是一大堆嵌套文件,但是纯粹就是这个。
如果我做的cp favicon.ico favicon2.ico
,Apache可以读取第二个就好了。
如果我做mv favicon.ico favicon3.ico
,Apache会在favicon3.ico上抛出一个403。
如果我su apache
,我可以读取文件为apache。
stat
说这两个文件是相同的,除了inode号码。
有一些隐藏的国旗或者我失踪的东西吗? 我从来没有见过这样的事情。
error_log
说(13)Permission denied: access to /favicon3.ico denied
SELinux拒绝你访问文件,因为你移动了,而不是从文件系统的其他地方复制到它的最终位置。 因此,它保留了原来的安全上下文,这使得Apache不能访问它。
要解决这个问题,请重新标记文件(可能还有其他所有文件)。
例如:
restorecon -r -v /var/www/html
为了避免将来出现问题,请复制文件(并在必要时删除原件)。