Static Content Web Hosting — HTML

Static content web hosting for Columbia users' personal websites.

CUNIX accounts are available to select Columbia faculty and staff, allowing users to store web files and other non-email files on the CUNIX system. This space is separate from the email space on the main Columbia system. 

Users historically were able to create personal websites using their CUNIX account, however accounts are no longer provided for this purpose. Departments and student organizations can create official websites in the Columbia domain by requesting server space for an official website. If you’re part of a department or organization and would like to have a website, CUIT encourages you to consider Columbia Sites, which offers self-service, branded website templates that provide a rich and dynamic user experience for free. Please see our web publishing page to see a summary of options available at Columbia.

To request a CUNIX account, please submit a ticket to the CUIT Service Desk. Please note that  the use of CUNIX is dependent on your reading and understanding of University policies and guidelines, including IT Policies. Generally, Columbia University does not sponsor, review or monitor the contents of any personal web pages maintained by Columbia faculty, students or staff on websites using University platform, nor does the University endorse the contents of any such personal websites.

Storage Space for Personal Web Pages

Each ID also includes space on the CUNIX system for storing personal web files and other non-email files. This space is separate from the email space on the main Columbia system. Non-email space quotas are as follows:

  • Faculty: 80MB
  • Staff: 20MB
  1. Create a world-accessible directory called public_html within your CUNIX account. Set the permissions so that it is public. To do this, you must SSH to your CUIT UNIX account. You can learn more about setting permissions below.

  2. Create HTML documents in your CUNIX account or on your computer. Your personal website homepage would normally be called index.html. That will make it the default file that is shown to a visitor to your site. The file called index.html is your homepage, the starting point for access to the rest of your pages.

    The address, or URL (Uniform Resource Locator), used to reach:
    ~user/public_html/index.html

    would be:
    http://www.columbia.edu/~user/

    To access the other web pages in your directory, the visitor to your site would have to follow a link from your homepage, or type the complete URL including the file name:
    http://www.columbia.edu/~user/filename.html

  3. Move all files into your public_html directory. Please see our secure FTP software page if you need to move files from your computer into your public_html directory.

  4. Make them public on the Internet. If your files are in the proper place, please see our managing access and setting permissions instructions so that your files are public.

Every file and directory in your site is protected from or made accessible to other users by setting its access permissions. 

You can determine the permissions for the user, i.e. the owner (u), the group (g), or others, i.e. everyone else (o). In order to add permissions or take them away, use the command chmod and either a plus sign or minus sign respectively. The permissions you can add or take away are read (r), write (w), and execute (x) for the user, group and all the others.

You can set these permissions through some secure FTP clients such as WinSCP or by telneting to CUNIX and using the "chmod" command. Whichever method you select, you must give others (o) permission to read (r) each file that you wish to be visible through a Web browser unless specified otherwise.

To see what the existing permissions on a file are, telnet to CUNIX and use the command ls -lg filename:

$ ls -lg index.html
-rw-r----- 1 ariel  rad  5388  May 29 1999  index.html

The owner, ariel, can read and write to this file (rw-), the members of the group rad can read it (r--), however, everyone else can't read it (---). (Learn more about UNIX groups.)

Using the example above, to add write (w) permissions for the members of the group, rad, the owner, ariel, would type the following at the $ prompt:

$ chmod g+w index.html 

Check to see if the permissions were properly set by using the ls -lg command 

$ ls -lg index.html
-rw-rw---- 1 ariel   rad  5388 May 29 1999 index.html

Now the members of the group, rad, can make changes to the file index.html. However, ariel's file will not be visible through a Web browser because others (o) have not been given permission to read (r). To add this use the chmod command: 

$ chmod o+r index.html

Check to see if the permissions were properly set by using the ls -lg command 

$ ls -lg index.html
-rw-rw-r-- 1 ariel   rad  5388 May 29 1999 index.html

The file, index.html, can now be viewed using a web browser.