wiki:ConfigurationGuidelines

Version 51 (modified by Praneeth Bodduluri, 12 years ago) ( diff )

--

Configuration Guidelines

How to configure a new instance.

File Permissions

chown www-data web2py/applications/admin/cron
chown www-data web2py/applications/admin/cron/crontab
chown www-data web2py/applications/admin/cache/
chown www-data web2py/applications/admin/databases/
chown www-data web2py/applications/admin/errors/
chown www-data web2py/applications/admin/languages/
chown www-data web2py/applications/admin/sessions/
chown www-data web2py/applications/admin/uploads/
cd web2py/applications
bzr branch lp:sahana-eden eden
chown www-data eden/cron
chown www-data eden/cache/
chown www-data eden/databases/
chown www-data eden/errors/
chown www-data eden/languages/
chown www-data eden/sessions/
chown www-data eden/static/img/markers
chown www-data eden/static/scripts/tools
chown www-data eden/static/styles/S3/sahana.css
chown www-data eden/static/styles/S3/sahana.min.css
chown www-data eden/uploads/
mkdir eden/uploads/gis_cache
mkdir eden/uploads/images
mkdir eden/uploads/tracks
chown www-data eden/uploads/gis_cache
chown www-data eden/uploads/images
chown www-data eden/uploads/tracks

Database Setup

Production system should use MySQL:

  • Edit models/00_db.py

Security

Before the 1st login, edit models/00_settings.py:

auth.settings.hmac_key

Configurable Options

These can be set via http://127.0.0.1:8000/sahana/admin/setting/update/1

  • Admin Name/Email/Tel
  • Debug: improve performance by deselecting this option.
  • Self-Registration: disable Self-Registration by deselecting this option.
  • Audit Read: Enable Auditing of all Read operations (Display)
  • Audit Write: Enable Auditing of all Write operations (Create/Update/Delete)

In time these will be configured by Web Setup.

Some Auth options are currently only configurable via editing {{models/00_settings.py}}:

S3_PUBLIC_URL
S3_UTC_OFFSET
mail.settings.server
mail.sender
auth.settings.registration_requires_verification
auth.settings.registration_requires_approval        # Don't do this until after 1st admin user registered!
auth.settings.verify_email_onaccept

In time we could expose to a Web-based admin page, although it's low priority as these are mostly installation-time decisions.

Disable unnecessary modules, which is currently done in 2 areas:

  1. Hide the menus (to reduce UI clutter):
    • WebUI: /sahana/appadmin/index
    • Table: db.s3_module
  2. Disable the Models (to speed up performance):
    • edit file models/01_modules.py
    • section: shn_module_enable
  3. Can also reorganise the Modules menu completely to better display those relevant to the instance:
    • edit file models/01_modules.py
    • section: s3.menu_modules

If you wish to hide some fields which you don't want to confuse your system, then you can do something like this models/zzz_local.py instead of amending the main model (this means that future merges from trunk won't clobber your changes):

# Hide unnecessary fields
table = 'pr_person'
db[table].pr_pe_label.readable = False
db[table].pr_pe_label.writable = False
db[table].local_name.readable = False
db[table].local_name.writable = False
db[table].opt_pr_gender.readable = False
db[table].opt_pr_gender.writable = False
db[table].opt_pr_age_group.readable = False
db[table].opt_pr_age_group.writable = False
db[table].email.readable = False
db[table].email.writable = False
db[table].mobile_phone.readable = False
db[table].mobile_phone.writable = False
db[table].date_of_birth.readable = False
db[table].date_of_birth.writable = False
db[table].opt_pr_nationality.readable = False
db[table].opt_pr_nationality.writable = False
db[table].opt_pr_country.readable = False
db[table].opt_pr_country.writable = False
db[table].opt_pr_religion.readable = False
db[table].opt_pr_religion.writable = False
db[table].opt_pr_marital_status.readable = False
db[table].opt_pr_marital_status.writable = False
db[table].occupation.readable = False
db[table].occupation.writable = False

Mapping Options

http://localhost:8000/sahana/gis/config/update/1

Default Map Portal:

  • Lat
  • Lon
  • Zoom

Bounds of relevant area:

  • Min Lon
  • Max Lat
  • Min Lon
  • Max Lat

Selecting Base Layers:

Test out whether OpenStreetMap, Google, Yahoo or Bing have the best road maps & Satellite imagery

API Keys for Google, Yahoo & MultiMap layers:

Import Admin Boundaries:

Roles

By default the 1st user to register will gain the Administrator role.

All other users have just the 'Authenticated' level of access, which by default allows 'Read' access to all records.

To Edit records, users need to be added to the 'Editors' role.

To add roles to users, go to the Administration menu & within User Management choose 'Membership'.

Security policy is configured in models/zzz.py

favicon.ico & robots.txt

These can be provided via 2 different means:

  • mod_rewrite
  • web2py/routes.py: copy routes.example.py & edit

Themes

Ensure these files are writable by the webserver:

chown www-data /path/to/web2py/applications/sahana/static/scripts/tools
chown www-data /path/to/web2py/applications/sahana/static/styles/S3/sahana.css
chown www-data /path/to/web2py/applications/sahana/static/styles/S3/sahana.min.css

Colour scheme:

  • select using Admin Panel

Logo:

  • copy new logo to static/img
  • point to this using Admin Panel

Footer:

  • copy new footer to views/
  • point to this using Admin Panel

DeveloperGuidelinesThemes

Error pages

Add the following to routes.py of your web2py installation for pretty error pages.

routes_onerror = [
        ('eden/401', '/eden/default/user/login'),
        ('eden/*', '/eden/errors/index'),
        ('*/*', '/eden/errors/index'),
    ]

Internet Hosting

Can switch to having users download files from CDNs instead of your server.
This can improve performance in 2 ways:

jQuery from Google by uncommenting the line in views/sahana_scripts_min.html

ext-all.js & ext-all.css from Cachefly by uncommenting the lines in views/gis/gis_scripts_min.html & views/gis/ol_js_loaders.html

Performance Optimisation


InstallationGuidelines

Attachments (5)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.