skip navigation

This page looks better in modern browsers. Please upgrade.

Brown Home Brown Home Brown Home Brown CS

Dynamic Web Content

Though most of the CS Dept website consists of static HTML pages, we also support a variety of dynamic web technologies. Several platforms are available on several web servers. Read on for the details.

Developing Web Applications

The development server is 'dweb-devel' and is accessible via the filesystem at

   /web/dweb-devel

The web server root is

   /web/dweb-devel/html

and anyone may create a project directory there.

There are also directories for java servlets and cgi commands.

The development server is not accessible from outside of the CS Dept firewall.

Databases

Each dynamic web server machine is serviced by a dedicated database server machine. These constitute a "failover pair" in which each server can take over for the other in the event of a system failure.

Databases are named after their web server. For instance, the database server for dweb-devel is dbweb-devel.

Postgresql

All CS Dept database servers, both for general use and dedicated website use, are running Posgresql.

Deploying Web Applications

To make a working, debugged web application available to a wider audience, contact the technical staff by sending mail to 'problem.' But first, read the rest of this section.

Exposing dynamic web applications, especially home-grown ones, to the internet raises the potential for security problems. To contain the risk, we segregate our applications onto different servers in different DMZ zones, based on who administers them and the sensitivity of the data to which they have access.

Note that the risks are not only to the department, but to the applications themselves. An insecure application can threaten the operation and integrity of any other application running on the same hardware.

Server Virtualization (coming soon)

To smooth the transition from development to deployment, while managing the risk, we are investigating server virtualization technologies. These will allow us to partition a single server into multiple, virtual servers, and permit application developers to have administrative control over their applications without compromising the security of other applications. When we are ready to roll this out, this web page will be updated.

Languages and Technologies

CGI

The primary (static, non-dynamic) web servers support CGI commands. A complete description of this facility is on this page (scroll down a bit).

PHP

Though there are many web application programming languages and environments, PHP's popularity and plethora of ready-made software and components make it an obvious choice for support.

Files that end in .php, and are placed in the dynamic web server root directory

   /web/dweb-devel/html

are interpreted by the PHP engine. The PEAR libraries are also available to developers. For additional components or applications, mail 'problem' with your request.

Java

Our dynamic web application servers run Apache Tomcat. Java servlets go into the java root directory

   /web/dweb-devel/java

Be sure to create a directory to contain your project.

Perl, Ruby, Scheme, etc...

There are many web application technologies. In many cases, these can be made available by request. Email 'problem' with your request, and please describe your project.

Folks interested in scheme web applications should take a look at the PLT Scheme group. Contact Shriram.


Page Owner: John Bazik Last Modified: Mon Oct 6 02:03:16 2008