由于apache + php对mapped drive和local drive的处理有所差别,apache中直接使用mapped drive会出现 don’t have permission 的问题。要解决该问题,你可以:
1. 在apache的配置文件中,对于documentroot可以采取类似的配置(如果你的apache采用了virtualhost,请比葫芦画瓢):
DocumentRoot "//192.168.21.51/jackgeng/wwwroot/malabs/web"
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
2. 如果你的apache 是以service的方式运行,那么请修改其Log On As为你的域用户(也就是你登陆windows操作系统的用户); 如果你是在控制台运行apache,那么直接运行httpd.exe 就可以了。
至此,website的首页(index.php)已经可以正常访问了。
在开发环境中,大家总是会访问*_dev.php (该环境会记录symfony日志,方便debug),而此时symfony却不能再log目录生成日志,系统报告错误:
500 | Internal Server Error | sfFileException
Unable to open the log file "\\192.168.21.51\JACKGENG\malabs\website\wwwroot\malabs\log/frontend_dev.log" for writing.
stack trace
* at ()
in SF_SYMFONY_LIB_DIR\log\sfFileLogger.class.php line 75 ...
72. $fileExists = file_exists($options['file']);
73. if (!is_writable($dir) || ($fileExists && !is_writable($options['file'])))
74. {
75. throw new sfFileException(sprintf('Unable to open the log file "%s" for writing.', $options['file']));
76. }
77.
78. $this->fp = fopen($options['file'], 'a');
根据我四处求医的结果,发现这个可能是symfony的一个bug,你可以直接注释这4行(73-76),然后访问*_dev.php,你就发现你需要的日志正常生成了。
阅读(2581) | 评论(0) | 转发(0) |