个人工具

UbuntuHelp:MoodleZope

来自Ubuntu中文

Oneleaf讨论 | 贡献2007年5月24日 (四) 16:13的版本 (新页面: {{From|https://help.ubuntu.com/community/MoodleZope}} {{Languages|UbuntuHelp:MoodleZope}} == Goal == To run moodle (http://moodle.org/) and zope2.7 (http://www.zope.org/) on port 80 of o...)

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航, 搜索

Goal

To run moodle (http://moodle.org/) and zope2.7 (http://www.zope.org/) on port 80 of our school computer science web server (http://linus.yhspatriot.net). We are behind a firewall with only port 80 open, so I needed to setup virtual hosting with apache2 to make this work. I wanted linus.yhspatriot.net to point to a zope2.7 instance, and moodle.yhspatriot.net to point to a moodle instance. I found it convenient to have mysql.yhspatriot.net point to mysql-admin as well.


Setting up the server

0. install ubuntu 5.04 server 0. edit /etc/network/interfaces for static ip address by changing the primary interface to:

# The primary network interface
iface eth0 inet static
address 158.59.195.113
netmask 255.255.252.0
gateway 158.59.192.1

0. edit /etc/apt/sources.list removing cdrom source at top and uncommenting universe sources 0. do the apt-get dance (apt-get update and apt-get upgrade) 0. install the following using apt-get:

          • ssh
          • zip and unzip
          • apache2
          • mysql-server
          • phpmyadmin


Configuring mysql

0. Point a web brower at http://158.59.195.113/phpmyadmin/ 0. By default, username root with no password is enabled 0. Login, click on "Change password", and change the password 0. Click "Databases", fill-in "Create new database" with moodle and click "Create" 0. Click "Privileges" then "Add a new User" 0. Add user moodle with all "Data" and "Structure" privileges checked


Configuring Apache Modules

  • As root, run the following:

ln -s /etc/apache2/mods-available/proxy.conf /etc/apache2/mods-enabled/proxy.conf

  • Repeat with proxy_connect.load and proxy.load

Configuring virtual hosts

0. Edit /etc/apache2/apache2.conf, adding a NameVirtualHost line, so that the last three lines of the file look like this:

# Include the virtual host configurations
NameVirtualHost 158.59.195.113:80
Include /etc/apache2/sites-enabled/[^.#]* 

0. Create a file named azi.conf in /etc/apache2/sites-available with the following:

<VirtualHost 158.59.195.113:80>
ServerName linus.yhspatriot.net
ServerAdmin [email protected]
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://158.59.195.113:8080/
ProxyPassReverse / http://158.59.195.113:8080/
ProxyPass /misc_ http://158.59.195.113:8080/misc_
ProxyPassReverse /misc_ http://158.59.195.113:8080/misc_
ProxyPass /p_ http://158.59.195.113:8080/p_
ProxyPassReverse /p_ http://158.59.195.113:8080/p_
</VirtualHost>


<VirtualHost 158.59.195.113:80>
ServerName mysql.yhspatriot.net
ServerAdmin [email protected]
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>

DocumentRoot /var/www/phpmyadmin/

Options +FollowSymLinks

<IfModule mod_php4.c>
php_flag magic_quotes_gpc On
php_flag magic_quotes_runtime Off
php_flag file_uploads On
php_flag short_open_tag On
php_flag session.auto_start Off
php_flag session.bug_compat_warn Off

php_value upload_max_filesize 2M
php_value post_max_size 2M
</IfModule>

<IfModule mod_dir.c>
DirectoryIndex index.php
</IfModule>
</VirtualHost>


<VirtualHost 158.59.195.113:80>
ServerName moodle.yhspatriot.net
ServerAdmin [email protected]
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>

DocumentRoot /var/www/moodle/

Options +FollowSymLinks

<IfModule mod_php4.c>
php_flag magic_quotes_gpc On
php_flag magic_quotes_runtime Off
php_flag file_uploads On
php_flag short_open_tag On
php_flag session.auto_start Off
php_flag session.bug_compat_warn Off

php_value upload_max_filesize 2M
php_value post_max_size 2M
</IfModule>

<IfModule mod_dir.c>
DirectoryIndex index.php
</IfModule>
</VirtualHost>

0. create a sym-link in sites-enabled: ln -s /etc/apache2/sites-available/azi.conf /etc/apache2/sites-enabled/azi.conf


Installing moodle

My goal was to use packages from the ubuntu and universe repositories whenever possible, but the after several unsuccessful attempts to use the moodle package I found it much easier to install moodle from source, using the following proceedure:

0. Download the latest moodle source (wget http://download.moodle.org/stable15/moodle-1.5.2.tgz worked at the time this was written 0. Untar it in /var/www 0. Point a web browser at http://158.59.195.113/moodle 0. Run through all the setup pages:

            • use /var/moodledata for data directory (as root):

0. mkdir /var/moodledata 0. chown www-data.www-data /var/moodledata


Installing zope2.7

As root: 0. apt-get install zope2.7 0. apt-get install zope-zwiki 0. mkzope2.7instance 0. edit /var/lib/zope2.7/instance/linus/etc/zope.conf changing http-server port to 8080

Now log into your zope instance and create a SiteRoot, setting the Base to http://linus.yhspatriot.net and the Path to /.