- What is Ariadne?
- What do I need to run Ariadne?
- Where do I get it?
- Does Ariadne support my browser?
- I have problems installing Ariadne, help!
- So, how do I build a site?
- How do I remove the login screen for my site?
- Does Ariadne support my language?
- Ariadne seems slow, how do I speed it up?
- Which database should I use?
Ariadne is a Content Management System and Application Framework for the web.
It has a rich user interface which includes wizards, pulldown menus, and a WYSIWYG HTML editor. Ariadne is available for free under the Gnu General Public License.
Ariadne is built with PHP, the most popular web programming language, Apache, the most popular web server, and MySQL, the most popular database engine for web applications. PostgreSQL and MS SQLserver are also supported.
Ariadne runs on Windows (NT, 2000) with either IIS or Apache, or any Unix with Apache. Ariadne also needs PHP 5 running as a module (not via CGI!) and a database, either MySQL, PostgreSQL or MS SQLserver.
You can download it from this website. Install it using the installation instructions that come with it. Then go to the tutorials section on this website and follow these tutorials step by step.
Ariadne only outputs what you tell it to. Only what you define in your
templates is sent to the browser. We've even written templates that output
RTF, no html in there.
The Ariadne installation script runs a number of checks before trying to install Ariadne. Please take a good look at the output of this script, it will usually be enough to determine the problem.
In addition if you are using Apache 2 and get only 404 errors after installation, make sure you have "AcceptPathInfo On " in the httpd.conf. For more information see the Apache website.
Ariadne works a bit different from what you may be used to. So the best way is to first start reading the user manual.
You need to grant the user public read access to your site. You can do that by browsing to the root of your site, which should be of class Site (psite).
Click on the 'grants' link in the 'Settings' section. A popup will open.
Click on 'browse' and select the group 'Public', then click 'Open'. Now enter the text 'read' in the input box to the right, and click 'Add'.
You should now be able to access the entire site without logging on.
Ariadne supports a number of languages out of the box in its own user interface, the language to use can be configured in the user preferences dialog.
However, Ariadne is not limited to just these languages. You can also add a new language for your website, simply by adding the language code in the ariadne configuration file. Although this language won't have any user interface translations, you will still be able to create your website in this language. If you do take the trouble to translate the Ariadne user interface, we will be very gratefull if you send it to us.
Ariadne stores all information in Unicode, UTF-8 to be precise. This means that almost any language spoken anywhere on earth is automatically supported. Translating some text to another language is as easy as clicking on the right language tab, and entering the translated text there.
Ariadne is a complex system, it does require a reasonably fast server to run optimal. However, there are a few things you can do to make it perform better. The single most important optimizaiton is to use the cache as much as possible. Ariadne will cache every request, if allowed. You can set this up in the cache dialog, through the 'Set caching for ...' menu option.
You can change the caching setting per directory. At least set the cache to 'Refresh cache on Change' for images, so make sure most images are in seperate directory if you don't want to do this for the entire site.
Caching is not without its dangers. If you have a newspaper cached for two hours, that means that only once in every two hours the content of the newspaper will update. So play with the settings a bit untill you're satisfied.
If you cannot use the normal cache, because the site is an intranet and shows custom content for each seperate user for instance, the private cache may come in handy, see the PINP function
savecache() for more information.
Another thing you should be aware of is that each call using the PINP functions
parents() is a call to a database system. These queries can become complex, so always try to use them as sparingly as possible.
It is usually a bad idea for example, to call templates recursively. This means if you call a template via ls(), don't use ls() in that template again. Use find() instead to get the entire resultset in one go.
Something else which may help is to calculate urls you need often once, and use putvar() to make them available for other templates later on, like the site url and a url to the graphics directory.
Ariadne supports MySQL, PostgreSQL and MS SQL. MySQL remains our favourite and best tested database, but we keep some systems running on PostgreSQL as well. There are a few people running on MS SQL as well, though we currently aren't, so no guarantees there. The current Oracle implementation is known to be broken. So if you want to help out, here's your chance.