Configuring and running Ryzom Core Web Services on GNU/Linux
Preparing Packages
For Debian/Ubuntu users you will need to install the following packages:
sudo apt-get install apache2 php5 php5-mysql php5-gd rrdtool screen
VHost
Create a public web directory and point a VHost to it.
Point a second VHost to the same directory with port 40916
Upload
Upload the following to your public web directory of your PHP host
/code/web/public_php
Upload the following to a private directory accessible by your PHP host
/code/web/private_php
Setup
Run the following script and follow the instructions
http://<hostname>/setup/
This script will create a config.php under the public php directory, and set up the nel, nel_tool and ams databases.
Additional Notes
Advanced Configuration Topics
- See Configuring WebTT for configuration details regarding the Web Translation Tool.
- See Configuring Ryzom API for configuration details regarding configuring the Ryzom API and WebIG applications.See Configuring Ryzom Ring Server for configuration details regarding the configuration of a Ryzom Ring shard.See Configuring Patching Services for configuration details regardin the patch site and tools.
- See Configuring the Character Achievement App for information on setting up the Character Achievements app.
In order to execute system commands like restarting services you will need to be able to log in as root or execute the command using sudo, e.g.:
sudo /etc/init.d/apache2 restart
- Restart Apache by typing the following.
/etc/init.d/apache2 restart
- Make sure the directory's requiring write permissions is writeable by all.
chmod a+w code/ryzom/tools/server/admin/graphs_output
chmod a+w code/ryzom/tools/server/admin/templates/default_c
chmod a+w
code/ryzom/tools/server/www/login/
logschmod a+w code/ryzom/tools/server/ryzom_ams/www/
chmod a+w code/ryzom/tools/server/ryzom_ams/www/html/cache
chmod a+w code/ryzom/tools/server/ryzom_ams/www/html/templates_c
Setting up MySQL
The configuration files in
- code/ryzom/server
- code/ryzom/tools/server/ryzom_ams/www/config.default.php
- code/ryzom/tools/server/admin/config.php
- code/ryzom/tools/server/www/login/config.php
expect your user to be named 'shard' with NO PASSWORD. If you decide to use a different name for your MySQL user, or assign it a password, you will need to go through the files and change these values from 'shard' and "" wherever they appear. (they appear in several .cfg files)
Since this (and a password) can lead to unexpected errors (eg. error '4000') it is best to make sure everything works correctly with the defaults first.
Parse Error
If you are getting strange errors some config files may have Windows editor "control-M" endline characters, which appears as a blue ^M in vim. You can remove it with this vi command, noting that ^M is typed by pressing Ctrl+V followed by Ctrl+M:
find /home/username/ryzom/code -name "*.cfg" -name "*.php" | xargs grep -l '^M' # if there are none, Vim will gladly eat your shell if you xargs it vi <listed filename> # Next issue this command to vi :%s/^M//g
Running MySQL Auto Install
Ryzom AMS now includes auto install scripts for the mysql database, all you have to do is load your DocumentRoot on port 80 that was setup above, for example http://127.0.0.1
A page will load that looks like the below, type in your mysql root user/pass.
The installer will by default setup permissions for the user "shard" if you want to use a different user you will need to run the below sql statements.
GRANT ALL ON nel.* TO newuser@localhost; GRANT ALL ON nel_tool.* TO newuser@localhost; GRANT ALL ON ring_open.* TO newuser@localhost; FLUSH PRIVILEGES;