I am beginning a new project that uses MEAN.JS (MongoDB, ExpressJS, AngularJS, Node.js). I use Apache as my webserver on my local Ubuntu VM. When I first read about using Express, I wondered how I would use Express and Apache together. Further confusion came when I learned that my host provider (webfaction uses Nginx to serve static files and Apache for PHP and other server-side technologies. So Node.js and Express will actually be running under Nginx. Because I wanted my development environment to be enulate production as much as possible, I decided to run Nginx and Apache together.
Although there are many advantages to installing Mezzanine using Python’s virtual environment, I decided against it. I already have Django installed on Apache using mod_wsgi, so my Ubuntu install is already primed. Although I followed the basic steps as discussed in a previous post (Setting up Django with Apache and mod_wsgi on Ubuntu 11.10), there were a bit more steps involved with setting up Mezzanine – especially as it relates to how and where to serve static files.
I beginning a new project where I decided to use Django. I briefly worked with Django for an embedded device over two years ago. Now I am creating a full-fledged web application using Django and jQuery.
When setting up Django, I initially followed the tutorials on djangobook.com. While the site is a good starting point for learning Django, it lacks some details, especially as it relates to serving static files (css, js, etc.) while using the development server. After struggling with the display of my css files, I decided to use Apache instead of the development server. After all, the development server will not be used in production, so I would rather duplicate a production environment as much as possible. In my opinion, the primary reason for using the development server is for debugging, but so far, I have found that Apache’s error log has been pretty good.
For some reason that I still have not been able to determine, I can no longer open Aptana Studio on my Ubuntu box. The splash screen displays, then nothing. Aptana closes. No error. No nothing. I think it has something to do with the JRE and/or XULRunner versions. Not sure. I used it one day, but couldn’t use it the next.
I have been upgrading an web application for a client. I initially created the application using a custom php framework – spliced together however awkwardly, but it worked. In version 2, I included YUI 2.8, but have been using the same backend.
The site is nearly complete (ajax functionality, and database development), I decided that I needed a more structured php framework. I chose CakePHP primarily because I could bake the models, views, and controllers. With only 17 tables, The application is not very large, but the thought of creating models, views, and controllers for 17 tables did not sound exciting.
I could not bake on my Mac. I got an error, “Call to undefined function mysql_connect()”. I searched for hours trying to figure out why I was receiving the error, but to no avail. I think that I need to re-install PHP. Not going to happen. I instead decided to setup Cake on my Ubuntu box (See my post: Setting Ubuntu For Web Development).
After installing CakePHP on my Ubuntu box, I viewed the default home page in my browser and noticed that the page was not styled. Cake did not know the path to the CSS file because I had not enabled mod_rewrite. Although I could opt to setup CakePHP to work without mod_rewrite, I decided to enable it.
I was working on a project where I needed Helvetica fonts on my Ubuntu box. Helvetica fonts are on my mac, but stored in a .dfont file (System/Library/Fonts). First I copied the Helvetica.font to my Ubuntu box (I placed them in my home directory). I then installed Fondu.
sudo apt-get install fondu
Now navigate to where you copied the .dfont file and enter:
The dfont file will be converted to .ttf files. Depending on the font type, this will create multiple .ttf files.
Copying Fonts to Font Directory
Now you can move the .ttf files into the font directory (/usr/share/fonts/truetype).
This was not as easy as I thought. I opened the file browser and tried to copy/paste the fonts into the fonts directory, but I received a permission denied error because I was not root.
Open terminal (Application->Accessories->Terminal).
gksu nautilus /usr/share/fonts/truetype
Using ‘gksu’ will open the file browser with root privileges. Now open another file browser to the location where you copied your fonts to:
gksu nautilus /home/les/
Now both are opened with root privileges. Now just drag/drop the files into the font directory.
Note: You may have to create a folder with the font name first. If you only have a single font file, then you can just copy it into the Truetype directory (or the appropriate directory – opentype, etc). If you have multiple font files (Helvetica.ttf, HelveticaBold.ttf, etc), then you should first create a folder named helvetica under the TrueType folder and then copy all helvetica files under the helvetica directory.