Jump to content

Recommended Posts

Posted

Two Part Question:

 

1) We have set up Moodle using the 'simple' install and all is fine BUT we have been advised that we need to move it to IIS instead of Apache? (please don't shoot me if this is wrong - I am very new to this!)

Can we do this easily? If so, are there instructions anywhere?

 

2) We are having a new server over the summer - Server 2008 (64 bit) and we would like to move the Moodle content over to it. Is this possible? If so, how? Exactly what do we move?

 

All help gratefully received.

Posted

1) We have set up Moodle using the 'simple' install and all is fine BUT we have been advised that we need to move it to IIS instead of Apache? (please don't shoot me if this is wrong - I am very new to this!)

 

this is wrong. Moodle is much better supported on Linux/apache than it is on windows/iis. go look at the moodle forums.

 

 

2) We are having a new server over the summer - Server 2008 (64 bit) and we would like to move the Moodle content over to it. Is this possible? If so, how? Exactly what do we move?

 

All help gratefully received.

 

should be quite easy, dump the mssql database. copy the files over, re-import the database.

 

Moodle migration - MoodleDocs

  • Thanks 1
Posted

Whats the reason for that? I thought Moodle was happier with an Apache webserver :s

 

Beaten :(

I = much to slow :( lol

Posted

1) We have set up Moodle using the 'simple' install and all is fine BUT we have been advised that we need to move it to IIS instead of Apache? (please don't shoot me if this is wrong - I am very new to this!)

Can we do this easily? If so, are there instructions anywhere?

 

Who ever advised you to move to IIS can i take them outside and shoot them?

 

2) We are having a new server over the summer - Server 2008 (64 bit) and we would like to move the Moodle content over to it. Is this possible? If so, how? Exactly what do we move?

All help gratefully received.

 

I would move to a linux (centos or Redhat) box instead of a windows server, in the long term you will have more flexibility.

Posted
We are having a new server over the summer - Server 2008 (64 bit) and we would like to move the Moodle content over to it.

 

I'm (semi-)planning to move to Moodle 2.0 over the summer. I'm planning to set up a dedicated virtual machine to run it on, which should avoid all this stuff about which web server to run it on. You could do the same - either run your Server 2008 machine as a VM under Linux, or run a Linux VM on your Server 2008 machine.

 

I want to get this new Moodle to hook up properly to our Active Directory server so we have consistant logins accross our system. I think my plan so far is to simply set up this new Moodle server from scratch then export courses from the old server and import them in to the new.

 

--

David Hicks

Posted

@witch:

 

Hi witch I agree with the others that Moodle runs much better with Apache than IIS this is well documented on the Moodle site.

 

I also agree with CyberNerd in the movement of the database to another place as well as the content.

 

And would also agree with penfold_99 as to installing on a Linux distro such as the ones he has advised, along with another distro which we run ours on Ubuntu. :) ;)

Posted

And would also agree with penfold_99 as to installing on a Linux distro such as the ones he has advised, along with another distro which we run ours on Ubuntu. :) ;)

 

If you are thinking about tying moodle and sims.net via direct db connection, watch out for the problem with freetds on ubuntu. AFAIK its still broken.

Guest monkeyx
Posted
If you are thinking about tying moodle and sims.net via direct db connection, watch out for the problem with freetds on ubuntu. AFAIK its still broken.

 

I documented how to get freetds working to SQL 2000 and SQL2005. It was for a Facility plugin not SIMS though (The original author was using a RedHat based distro and I had to re write the installation guide for Ubuntu)

 

What part of freetds is not working for SIMS.net? I may be able to help if it related to connecting to mssql?

 

Tim

Posted

Direct SIMS db access... agggh nooo!!

 

I think the reason why witch is being told to move moodle over to IIS is it's easy to support (don't shoot me!! keep reading). If you think of it like this, you have 1,000 servers in an LA, all microsoft, you have WSUS etc setup and small army of Microsoft experts, a school has a unmanaged linux box\apache server... bang goes your security.

 

(Before you go on about how security linux is, yes, I know, BUT, if it isn't kept up-to-date and setup correctly, you're be watching as your nicely managed windows server laughs as your linux box gets hacked)

 

 

N00by question, why hasn't anyone made a installer for Moodle\php for IIS? Or where is it?

Posted

 

 

N00by question, why hasn't anyone made a installer for Moodle\php for IIS? Or where is it?

 

I guess it's because windows lacks a lot of the components that moodle uses, so it's not as simple as apt-get install moodle. linux distributions already maintain the pre-requisites and most people use linux as it is the best tool for the job.

 

There is windows help for moodlers:

Windows installation - MoodleDocs

 

The moodle installation needs to be updated for security, as well as the server.

it looks like a tossup between having to learn linux, or spend more time wrestling with keeping moodle and its components uptodate on windows.

Posted

Without delving into the Linux/Windows Apache/IIS debate, Moodle will run on all of them. Sounds like you don't have a choice, perhaps.

 

To move your site:

 

1. Install IIS, MySQL, PHP on Win Server 2008. Phpmyadmin is also useful if you don't know the MySQL command line.

2. Backup existing moodle root directory (/moodle by default).

3. Backup existing moodle data directory (/moodledata by default).

4. Dump existing MySQL database to .sql file.

5. Restore moodle root directory on Win2008 IIS server.

6. Restore moodle data directory on Win2008 (outside of moodle root for security)

7. Import .sql file in new MySQL instance.

 

 

Linux/Apache really is a better platform (I've had great luck with both Debian and Ubuntu), but sometimes you're not allowed to do that. I've run Moodle quite successfully on Win2008/IIS.

 

Be glad to answer questions as you do your migration.

 

moodlewright

  • Thanks 1
Posted

Thanks

I'm sure that it does work fine with apache and I would prefer to leave it there (if it ain't broke, don't fix it) but the boss wants to see if it can be moved - I'm not sure why. - something to do with ports and the website - we could put it on the same port and then people from outside don't need to type '81' after the addy which apparently they are incapable of doing. (If this makes no sense, humour me - I got about 3 hours sleep last night - went to see a film far too late and couldn't stop brain)

It isn't a support issue because I support the curriculum network completely and get no help from the LA

I'm sure the Linux option is best but it really isn't possible here - I know nothing about it and wouldn't know where to start - we also have a managed system here so integration might be a problem

Posted
Thanks

I'm sure that it does work fine with apache and I would prefer to leave it there (if it ain't broke, don't fix it) but the boss wants to see if it can be moved - I'm not sure why. - something to do with ports and the website - we could put it on the same port and then people from outside don't need to type '81' after the addy which apparently they are incapable of doing. (If this makes no sense, humour me - I got about 3 hours sleep last night - went to see a film far too late and couldn't stop brain)

It isn't a support issue because I support the curriculum network completely and get no help from the LA

I'm sure the Linux option is best but it really isn't possible here - I know nothing about it and wouldn't know where to start - we also have a managed system here so integration might be a problem

 

I guess port 80 is being used by Apache.

Posted
Thanks

I'm sure that it does work fine with apache and I would prefer to leave it there (if it ain't broke, don't fix it) but the boss wants to see if it can be moved - I'm not sure why. - something to do with ports and the website - we could put it on the same port and then people from outside don't need to type '81' after the addy which apparently they are incapable of doing. (If this makes no sense, humour me - I got about 3 hours sleep last night - went to see a film far too late and couldn't stop brain)

 

mpm_common - Apache HTTP Server

 

For example, to make the server accept connections on both port 80 and port 8000, use:

 

Listen 80

Listen 8000

in the httpd.conf and restart apache

  • Thanks 1
Posted (edited)

Sorry, I have no idea what any of that means...How do I get it to listen to port 8000 - what would the address bit be?

 

I am a hardware engineer at heart and I just don't really get what I am doing here! (what is this place?)

 

Oh, and will there be a problem with the new server being 2008?

Edited by witch
Posted
Sorry, I have no idea what any of that means...what will the 'listen' bit do? I wouldn't want to break anything (again)

 

the listen bit is a line in a file called httpd.conf. listen determines the port that the webserver listens on - ie http://servername:81 means that it's set to:

 

listen 81

 

actually, it could be

 

listen xxx.xxx.xxx.xxx:81

where x is ip address

 

if you change it to 80 then you won't need to type in :81 - but there may have been another reason for this (if IIS is installed on the same server for example)

try it, if it breaks you have backed up the httpd.conf file - right ;)

Posted
We only have one server so IIS is definitely installed on the same one - what do I do in this case?

assume you don't need iis....

 

stop the iis service, wait for the phone to ring. then change the "listen 81" to say "listen 80".

restart apache. if no one complains then uninstal iis.

Posted (edited)

No, I couldn't do that - it is definitely used here - we had to go into it to find the intranet page so that we could set up a link to Moodle.

So does that mean I can't move Moodle from Apache to IIS then? Still confused

Edited by witch
Posted

To get Apache running...

 

Add another IP to the server

 

Then enter IIS, go into the properties panel, change from (All Unassigned) to the old IP.

 

Open the httpd.conf and change the line that reads

 

listen 81

listen xxx.xxx.xxx.xxx:80

 

Replacing xxx.xxx.xxx.xxx with the new ip.

 

Restart IIS, (re)start Apache.

Posted
To get Apache running...

 

Add another IP to the server

 

Then enter IIS, go into the properties panel, change from (All Unassigned) to the old IP.

 

Open the httpd.conf and change the line that reads

 

listen 81

listen xxx.xxx.xxx.xxx:80

 

Replacing xxx.xxx.xxx.xxx with the new ip.

 

Restart IIS, (re)start Apache.

 

Er....I've already got apache running AND IIS. Did you mean that? Or what do you mean? What would that do? Why would I need to add another IP to the server?

Goodness I am confused...

 

We already have IIS and Port 80 is taken by something or other (website?). So, we put the moodle interface on port 81. But people can't type 81 at the end of the addy . So we want to put moodle on 80..I think...so would your solution do this?

or maybe I just want to be a pineapple

Posted
You're spot on Witch, you have IIS on your current IP on port 80 and to avoid people adding :81 to their url you would add a secondary IP to the server and bind Apache on port 80 to that and in turn bind IIS on the old IP on port 80 otherwise IIS (and apache in fairness) will by default try and use all IPs.
Posted

Witch.. what I would suggest you do is this:

 

I presume you have more than one dns hostname.. website would be http://www.schoolname.county.sch.uk and moodle would be moodle.schoolname.county.sch.uk - if this isnt the case, and moodle is usually accessed at http://www.schoolname.county.sch.uk:81 [same DNS as the website], you will need to get an additional dns host added [probably at the LEA].

 

Since one of the earlier release of the HTTP specification, you can redirect based on hostname - ie: moodle.schetc and http://www.schetc can be directed to different places despite being on the same ip and port. What I would suggest is that you move Apache onto port 80, and IIS onto 81. You can then configure apache to 'proxy' any requests sent to http://www.schetc across to IIS and handle moodle itself.

 

You can add lines similar to this to Apache:

 

ServerName http://www.schetc

ErrorLog logs/error_log

CustomLog logs/access_log common

ProxyRequests Off

ProxyPass / http://localhost:81/

ProxyPassReverse / http://localhost:81/

 

ServerName moodle.schetc

ErrorLog logs/moodle.schetc_error_log

CustomLog logs/moodle.schetc_access_log common

DocumentRoot c:\path\to\moodle

 

A good time to do this would be as part of your server changeover.

 

Kyle

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...