The goal of this post is to provide a rough guide to installing Telligent's GraffitiCMS on a linux server. I also intend to provide as many troubleshooting tips as I am aware.
I encourage all comments, big and small, positive and negative, acute and obtuse, with the aim of refining this post so that it is as useful as possible for anyone engaging in this particular task.
Now on to the fun stuff!
Here are the considerations for this installation: I used a dedicated SUSE 10.3 linux server with root access, running Apache 2.2 web server and Mysql 5.x database server. This post may still be useful to you if you have a differing configuration.
Installing Mono
I recommend you install the latest stable release of Mono. At the time of this writing, that is Mono 2.4. There are a number of ways to achieve this. For the purposes of this post, I will use YaST.
To install mono, remote into your dedicated linux server. This post assumes that you have shell access. Once logged in, type the following command:
YaST
This will bring up YaST’s pretty blue console UI. Take a moment and enjoy the warm blue glow it gives off (provided you have ANSI color support)!
A repository for mono needs to be added to YaST. Using your tab and arrow keys, navigate to the option: Software Repositories and press enter.
Select Add, Specify Url, then Next. On the next screen, select a name, such as Mono, for the Repository Name field, then paste the url, http://ftp.novell.com/pub/mono/download-stable/openSUSE_10.3 , into the URL field.
Click Next, then Finish.
Once back on the main YaST screen, select Software Management and enter. This should load up a list of packages available to install, including those already installed.
Install the following two packages: mono-complete and apache2-mod_mono.
While it is not required to install everything in mono, installing mono-complete helps simplify installation.
During installation, you may be prompted with a dependencies screen. Select ok to continue installation with dependencies and complete the prompts to finish installation.
Installing/ Configuring GraffitiCMS
Download the latest build from http://get.graffiticms.com/
Unzip the contents someplace on your server, such as /webs/mysite.com/
unzip Graffiti-1.2.zip /webs/mysite.com/
Now, you’ll need to change the ownership of the extracted graffiti web files, so that the owner running Apache has read/write access to the web files:
Chown –R wwwrun /webs/mysite.com
However, you might consider assigning a group ownership of the files and adding any users that need r/w access to that group.
Chown –R wwwrun:mysitegroup /webs/mysite.com
Setup Graffiti to use a MySql Database
Out of the box, Graffiti is already set to use VistaDB as its database, which is located in the App_Data folder of your GraffitiCMS instance. However, here’s how to configure Graffiti to use a MySQL database as its data source.
Connect to the MySql server:
mysql –u myadminuser –p mypasswd
Replace myadminuser and mypasswd with an admin user you have already configured.
Once logged in, create a database for your GraffitiCMS site:
Mysql> CREATE DATABASE mysitedb;
MySql>Connect mysitedb;
Now, create the db schema and add some sample data to the db:
MySql>source /webs/ mysite.com /”New Install”/Data/Graffiti_mySQL_schema.sql;
MySql>source /webs/ mysite.com /”New Install”/Data/Graffiti_mySQL_data.sql;
Don’t forget to create a user for your new database!
GRANT ALL ON msitedb.* TO ‘mysiteUser’.’%’ IDENTIFIED BY ‘MyUserPassword’;
Next, edit the /webs/mysite.com/web.config file and replace the following line:
<add name="Graffiti" connectionString="Data Source=|DATADIRECTORY|\Graffiti_Sample.vdb3"/>
With:
<add name="Graffiti" connectionString="server=127.0.0.1;uid=mysiteUser; pwd=MyUserPassword;database=mysitedb"/>
Also, replace this line:
<add key="DataBuddy::Provider" value="DataBuddy.VistaDBProvider, DataBuddy"/>
With:
<add key="DataBuddy::Provider" value="DataBuddy.MySQLDataProvider, DataBuddy"/>
Setting up the Web application in Apache
After installing Apache2-mod_mono, your Apache2 webserver should already be configured to use AutoHosting. Assuming you intend to run your application as a virtual host, it should simply be a matter of adding a new virtual host conf file to /etc/apache2/vhosts.d/ for your web applicaton. For more information on configuring asp.net apps in apache, check out the Mod Mono page.
Login to the new GraffitiCMS site
Open up a browser and navigate to your Graffit application via the url/ path you’ve created for it.
If all went according to plan, you should see a page that looks something like this:
Click the login link. The default username is Admin and the default password is located in your web.config file.
The line will look similar to this:
<add key="Graffiti:User:DefaultPassword" value="randomlygenerated"/>
That’s pretty much it! If anything is unclear in the post, please let me know and I’ll work to clean it up.
Troubleshooting
There’s nothing here as of yet, but please check back as I will update this section soon. In the meantime, please leave any comments you have about the instructions above, or about any issues you are experiencing and I'll work to incorporate those either in this post or in a new post.
Thanks!






15 comment(s) so far
hello, this is my first time i visit here. I found so many interesting in your blog especially on how to determine the topic. keep up the good work.
what a great info, thanks for sharing.
Very helpful info. Thanks.
Thanks mate,I was looking for that info nearly 2 days!!
I enjoyed reading your article. Very useful.
Awesome post! It really helped me a lot! Thanks for sharing it.
If you look on the menu on the left side of your facebook profile page, under "search" it says "applications." Clicking on it will bring you to another page that shows you all the applications you have at the moment. Check there first. If you don't have graffiti, you can add it. Near the upper right hand corner of your screen there is a blue button that says "Browse more applications" on it. Click on that. You can then find Graffiti either by scrolling through the list of applications or by typing it in the "Search apps" field.
Open up a browser and navigate to your Graffit application via the url/ path you’ve created for it.
Your hard drive would need to have 2 independent read/write heads scanning different portions of your HDD at the same time, and they are not made to do that. They only read one area of a hard drive at any given time, so that means only one operating system at a time, espcially OS's that are so different from each other.
You want to know the 6-byte address associated with the Ethernet NIC card in your workstation. How can you determine this MAC address (also called the physical address) if:a.) running windows xp b.) running linux
I would like for the menu to be on the left side. Can someone please tell me how I would go about doing this, in simple terms, please.If you don't have graffiti, you can add it. Near the upper right hand corner of your screen there is a blue button that says "Browse more applications" on it.
Unless all you want to do is look at static html files locally on your own computer then yes you will need some kind fo web server (apache is one). If you are writing php pages you will also need to have php installed and configured correctly. Most web hosting companies have this stuff already installed and working so you don't have to worry about it.
You can then find Graffiti either by scrolling through the list of applications or by typing it in the "Search apps" field.
I have PHP and Apache on my Linux PC. Both are running separately. Apache not recognizing PHP applications. I want to run PHP on Apache. Why PHP is not running on Apache? Did i missed any needed rpm or missed any configurations? Both Apache and PHP are come along with Linux OS and I did not installed with rpm.
The Problem Is Not From Apache With XP Pro, The Limitation is From Your ISP That Because Your Ip Changing Everytime & To Fix That Problem You Have To Register Free With No-ip.com & Download There Software It's #1 For Dynamic & Static Ip & DNS & It's Best For Webserver.