A colleague of mine a couple of years ago ran into problems with 2003
web edition, found that it really tried to lock everything down in an
attempt to be a secure internet server. Since the server was slotted
for intranet only (behind firewall), he switched to 2003 standard and
found things worked better; he claimed that doing the post-config from
the service pack was still a bit tricky, though, as again, the SP was
attempting to lock things down.
Sorry I can't be more specific, I wasn't involved at the time, was
just something I remember him talking about.
On another note, I feel your pain as I know what it's like to have
Management make retarded decisions after they play golf with a
Microsoft Sales Rep or whatever...
On Nov 19, 2:53 pm, "Christopher E. Franklin, Sr."
<[EMAIL PROTECTED]> wrote:
> Here's another thought, has anyone run into any trobule with Windows
> 2003 Web Edition (not the full windows server 2003 that includes file
> server stuff, domain controller stuff)?
>
> On Nov 19, 10:46 am, "Christopher E. Franklin, Sr."
>
> <[EMAIL PROTECTED]> wrote:
> > Well, I tried this weekend to get cake running on Windows IIS7, MySQL
> > and PHP. It works fine with a fresh install and making a new
> > controller, model and view. Works fine with Apache on Windows too
> > but, I am seeing a recurring pattern here.
>
> > If I extend the AppController by placing another app_controller.php
> > file into the app directory and put var $components =
> > array('Session'); then in function beforeRender(){
> > $this->Session->check('some_key'); } I get this error:
>
> > [Mon Nov 19 10:36:34 2007] [error] [client 192.168.1.100] PHP Fatal
> > error: Call to a member function check() on a non-object in C:\\apache
> > \\htdocs\\app\\app_controller.php on line 82
>
> > Doesn't matter if it's apache or iis, that's the error that persists.
> > Apache on Windows, I have mod_rewrite enabled in httpd.conf and I have
> > the AllowOverride settings to All.
>
> > Now, I also set up another Linux box with apache mysql and php, just
> > copied over the site and voila. Works fine!
>
> > The only difference is that one is on Windows and the other is on
> > Linux.
>
> > I am going to paste what's in my app controller.php here so, this post
> > may get a little long.
>
> > <?php
> > class AppController extends Controller
> > {
> > /**
> > * Adding Ajax and Javascript helpers to the default helpers.
> > * This will load them on the home page.
> > *
> > * @var Array Holds the names of the helpers to be loaded by
> > default
> > */
> > public $helpers = array('Html',
> > 'Ajax',
> > 'Javascript',
> > 'MenuDisplay',
> > 'Banners',
> > 'DraggableBox',
> > 'FormatCategories',
> > 'Session',
> > 'HeaderSearch',
> > 'TextImage',
> > 'TodaysHotProp',
> > 'classifiedGlance',
> > 'AdminHelper',
> > 'Number',
> > 'Form',
> > 'Pdf');
>
> > public $uses = array('Menu', 'Category', 'HotProp', 'Classified',
> > 'WvdBanner', 'Edition','Banner');
>
> > public $components = array('Cookie', 'Session', 'Apphtml',
> > 'MyAuth');
>
> > /**
> > * Changing the default extension of templates to php.
> > *
> > * @var String Holds the default extension of template files.
> > */
> > public $ext = '.php';
>
> > /**
> > * Setting the default pagination properties. Mainly for
> > classifieds.
> > *
> > * @var Array Holds the default pagination limits
> > */
> > public $paginate = array('limit' => 20, 'page' => 1);
>
> > /**
> > * Setting the default theme
> > *
> > * @var String The default theme
> > */
>
> > private $current_theme = 'blue';
>
> > /**
> > * This method overrides the basic method from
> > Controller::beforeRender()
> > * There are certain things that every view needs in order to
> > display
> > * correctly so, we set those values here, right before the page
> > renders.
> > *
> > * @internal We can also set a beforeFilter if we need to shut the
> > site down
> > */
> > public function beforeRender()
> > {
> > // I get the error here for $this->Session->check();
> > /**
> > * Get rid of the callback when not on the users controller
> > *
> > * @todo Add more controllers later on if needed
> > */
> > if(($this->params['controller'] != "users") &&
> > $this->Session->check('callback'))
> > {
> > $this->Session->del('callback');
> > }
> > // Every view has the side menu, get the links and set them in
> > an array for the view
> > $this->set('menuArray', $this->Menu->getMenuItems());
> > // We set recursive to 0 because we don't want unnecessary
> > data
> > $this->Category->recursive = "0";
> > // We get the classified categories for the Quick Links box
> > $this->set('categories', $this->Category->findAll());
> > $this->set('edition', $this->Cookie->read('edition'));
>
> > //Get the data for the Today's Hot Prop View
>
> > $rMax = $this->HotProp->getNumRows();
> > srand(date('His'));
> > $randomNumber = rand(1, $rMax);
> > $this->set('randomHotProp', $this->HotProp-
>
> > >findById($randomNumber));
>
> > /**
> > * Do some stuff for crumbs
> > */
> > $this->Apphtml->addCrumb('Home', '/');
> > if($this->params['controller'] != "pages")
> > {
> >
> > $this->Apphtml->addCrumb(Inflector::camelize($this->params['controller']),
> > DS.$this->params['controller'].DS);
>
> > if($this->params['action'] != "index")
> > {
> >
> > $this->Apphtml->addCrumb(Inflector::camelize($this->params['action']),
> > DS.$this->params['controller'].DS.$this-
> > >params['action'].DS);
>
> > }
> > }
> > $this->set('crumbs',
> > $this->Apphtml->getCrumbs(" » "));
>
> > }
>
> > public function beforeFilter()
> > {
> > // Clean out the old oneby thumbnail images
> > $this->CleanTmpOnebys();
>
> > // Check the banner status and set banners to inactive if they
> > are out of date
> > $this->CheckBannerStatusWs();
>
> > // We are going to set the default edition for QuickLinks here
> > // 31556926 = 1 year in seconds
> > if(is_null($this->Cookie->read('edition')))
> > {
> > $this->Cookie->write('edition', 'all', true, 31556926);
> > $this->Cookie->write('askededition', 0, true, 31556926);
> > }
>
> > // If the current theme is not set in a cookie, use the
> > default and set the cookie
> > if(is_null($this->Cookie->read('user_theme')))
> > {
> > $this->set('current_theme', $this->current_theme);
> > // 2592000 is the time in seconds for 30 days
> > $this->Cookie->write('user_theme', $this->current_theme,
> > true, 31556926);
> > }
> > else
> > {
> > // The theme was found in the cookie, use it.
> > $this->set('current_theme', $this->Cookie->read('user_theme'));;
>
> > }
> > $this->set('secure', false);
> > }
>
> > /**
> > * This method will delete the images out of tmp_onebys every
> > * 7 days
> > *
> > * @return Void
> > * @access private
> > */
> > private function CleanTmpOnebys() {
> > $clean = false;
> > uses('File');
> > $file = new File(APP."tmp/clean_time.txt", true);
> > $contents = $file->read();
> > if(empty($contents)) {
> > $file->write(strtotime("+7 days", strtotime(date('Y-m-d
> > 00:00:00'))));
> > $clean = true;
> > } else {
> > if(time() > intval($contents)) {
> > $clean = true;
> > }
> > }
> > // Perform the purge
> > if($clean == true) {
> > uses('Folder');
> > $folder = new Folder(WWW_ROOT.'/img/tmp_onebys');
> > $files = $folder->read();
> > if(is_array($files)) {
> > $files = Set::extract($files, "1.{n}");
> > foreach($files as $key => $value) {
> > $tmp_file = new
> > File(WWW_ROOT.'/img/tmp_onebys/'.
> > $value);
> > $tmp_file->delete();
> > unset($tmp_file);
> > }
> > $file->write(strtotime("+7 days",
> > strtotime(date('Y-m-d
> > 00:00:00'))));
>
> > }
> > }
> > }
>
> > private function CheckBannerStatusWs() {
> > uses('File');
> > /**
> > * check to see if the banner date file exists, if the file does not
> > exist create it and set the date of the contents to Next Tuesday ay
> > 12:00pm
> > */
> > $dateFile = new File(APP."tmp/banner_status_ws.txt", true);
> > $handle = $dateFile->read();
> > if(empty($handle)) {
> > $dateFile->write(strtotime("next Wednesday 00:00"));
> > } else {
> > // check the time value stored and make sure it is in the next week
> > if(time() > intval($handle)) {
> > $dateFile->write(strtotime("next Wednesday 00:00"));
> > $handle = $dateFile->read();
> > // Store all banners into an array
> > $arr = $this->Banner->findAll();
> > // Loop through the banners and check the status
> > foreach ($arr as $key=> $value) {
> > if (strtotime(
> > $arr[$key]['Banner']['end']) < intval($handle)) {
> > // echo "ID:
> > ".$arr[$key]['Banner']['id']. " should be Inactive!
> > <br />";
> > $bid =
> > $arr[$key]['Banner']['id'];
> >
> > $this->Banner->save(array('Banner' => array('id' => $bid,
> > 'status'=> "Inactive")));
> > //
>
> ...
>
> read more >>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake
PHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---