ผลต่างระหว่างรุ่นของ "ฐานความรู้"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 37: แถว 37:
  
 
==== Setting up the Database ====
 
==== Setting up the Database ====
  cd ~/grader/config
+
  cd ~/grader/web/config
 
  cp database.yml.SAMPLE database.yml
 
  cp database.yml.SAMPLE database.yml
 
Then, edit '''<tt>database.yml</tt>''' so that it reflects the database setting of your machine.
 
Then, edit '''<tt>database.yml</tt>''' so that it reflects the database setting of your machine.
แถว 48: แถว 48:
 
   password: whateverpassword
 
   password: whateverpassword
 
   host: localhost
 
   host: localhost
 +
 +
Next, you do the migration
 +
cd ~/grader/web
 +
rake db:migrate

รุ่นแก้ไขเมื่อ 10:00, 16 มีนาคม 2551

Apache2 on Ubuntu

Enabling User Directory

This is how to set up Apache2 on Ubuntu so that, when hxxp://server/~username is accessed, the browser returns the content in /home/username/public_html.

First, user directory is now a mod in Ubuntu's apache2. If you have not installed the mod, then execute the following command:

sudo a2enmod userdir

Second, edit /etc/apache2/apache2.conf and add the following lines:

<IfModule mod_userdir.c>
    UserDir public_html
</IfModule>

<Directory /home/*/public_html>
    AllowOverride FileInfo AuthConfig Limit
    Options Indexes SymLinksIfOwnerMatch IncludesNoExec
</Directory>

Third, execute the following command:

cd /etc/apache2/mods-enabled
sudo ln -s /etc/apache2/mods-available/userdir.conf userdir.conf
sudo ln -s /etc/apache2/mods-available/userdir.load userdir.load

Forth, restart your apache2:

sudo /etc/init.d/apache2 restart

Grader

Checking Out the Grader from SVN Repository

Installing HAML

The grader makes use of HAML. So you need to install it first.

gem install haml --no-ri

Checking out the Grader Web Interface

First, make a directory that will contain all the grader files. In my case, I make a directory called "grader" inside my home directory.

mkdir ~/grader

Inside the directory, you check out the web interface.

svn co http://theory.cpe.ku.ac.th/grader/web/trunk ~/grader/web

Setting up the Database

cd ~/grader/web/config
cp database.yml.SAMPLE database.yml

Then, edit database.yml so that it reflects the database setting of your machine.

Note: In Ubuntu, the database socket is not located at /tmp/mysql.sock as it is in other distributions. You need to add one extra line in database.yml to tell rails this:

 adapter: mysql
 socket: /var/run/mysqld/mysqld.sock
 database: ioi
 username: ioi
 password: whateverpassword
 host: localhost

Next, you do the migration

cd ~/grader/web
rake db:migrate