Windows IIS problems

Permalink
When I try installing c5 on my hosters Windows box with IIS the installer gives many errors but still completes. I can then work with c5 but if I want to add new themes then it crashes. I attached the file with the errors I get on the finished screen. The read/write/execute permissions should be set correctly by default, I asked support of my hoster.

Thanks

1 Attachment

 
schmidtc63 replied on at Permalink Reply
To be able to download and install themes and add-ons from the dashboard:

Modify php.ini of your server's php install:
make sure the following line exists and is uncommented:
extension=php_zip.dll

You may have to reset iis after that:
iisreset /noforce

Set privileges on \packages to make sure the IUSR_ account that is accessing this web site has read and write privileges.

Next, we need to modify \concrete\helpers\file.php, replacing the copyAll function with the following code:
//windows mod
                public function copyAll($source, $target, $mode = 0777) {
                                $source = str_replace('/','\\',$source); //<-- take the passed $source and replace the front slashes with back slashes for windows compatibility
                                $target = str_replace('/','\\',$target); //<-- take the passed $target and replace the front slashes with back slashes for windows compatibility
                                if (is_dir($source)) {
                                                @mkdir($target, $mode);
                                                @chmod($target, $mode);
                                                $d = dir($source);
                                                while (FALSE !== ($entry = $d->read())) {
                                                                if ( $entry == '.' || $entry == '..' || substr($entry, 0, 1) == '.') {
                                                                                continue;
                                                                }
                                                                $Entry=str_replace('/','\\',$Entry);           //<--                      
                                                                $Entry = $source . '\\' . $entry;     //replaced forward slashed with back slashes  for windows compatibility     
                                                                if (is_dir($Entry)) {