` CS 5610 Home

CS 5610 Web Development Home

http://www.ccs.neu.edu/teaching/web/


The CS 4550 Web Development site is now at http://cs4550.com/cs4550/

This CS 5610 page updated on

      

CCIS Username and Password

To participate in CS 5610, it is essential to have a CCIS account which translates into a CCIS username and password.

This is needed to:

  • Activate a CCIS web site on the college IIS web server.
  • Obtain a free copy of the Microsoft development environment called Visual Studio.

If you do not have a CCIS account, go to the following web page:

CCIS Account Signup

If you need to read documentation about this, go to:

CCIS Account Signup Documentation

How To Get A Student Site Created on the IIS Web Server

Once you have a CCIS account, go the the following page and opt in.

ASP.NET Site Opt-In Script

It may take several hours or even overnight for your site to be created. Once this site is created, it has a vanilla page that shows that the web site exists. You will replace this page once you have real content to upload.

How to Get Visual Studio from MSDNAA

MSDNAA means Microsoft Developer Network Academic Alliance. This is the source for software that Microsoft will give freely to students and faculty for academic purposes.

After you have a CCIS username, you must fill in an online form for the college so that your username is sent to the MSDNAA E-Academy site. This form is:

CCIS/MSDN Academic Alliance: Student Sign-up

This sign-up page mentions that E-Academy will send you a confirmation that may take up to 2 days.

Once you have the E-Academy confirmation, go to the following site to download the Microsoft software you wish including Visual Studio 2012 Ultimate.

msdn academic alliance software center

Click the login button in the upper left and you are on your way. I recommend using the drop down list to find the software. It is faster.

Your ASP.NET Site and How Users Will Reach It

The .NET web pages and web services that you will write must be served on the college ASP.NET server whose network address is:

development.ccs.neu.edu

As of January 2011, we upgraded the ASP.NET server to IIS 7 and the web technology to ASP.NET 4. Furthermore, we decided that the top level directory of the web site will correspond to a subdirectory v4.0 within your home directory on the ASP.NET web server.

This decision has an important advantage. It means that you may use the home directory on your site to store information such as passwords. This information may be accessed by your code but can never be served directly over the web to client users precisely because web serving is restricted to the v4.0 directory.

In particular, keep in mind the rule:

Put all new files to be served on the web in the v4.0 directory or in one of its subdirectories.

Users will reach your site using a URL that begins:

http://net4.ccs.neu.edu/home/yourusername/

Here yourusername is your CCIS login username. In particular, all students in the course must have a CCIS login.

Notice that the URL presented to users uses net4.ccs and does not mention the decimal place 4.0. In fact, from an external perspective, there is no indication that the subdirectory v4.0 exists. The mapping of file system locations to web URLs is handled automatically by the ASP.NET web server.

Back to the top

Making an ASP.NET 4.0 Web Site

You may find directions for downloading essential files that form the backbone of your initial web site at:

Essential Files to Download and Install

The huge advantage of creating your initial site in this way is that Source Server, Statistics Server, and Search Server will be on your site from day one. These servers play the following roles:

  • The servers support the open source philosophy of the course.
  • The servers are critical when you ask the instructors to help you with debugging a problem on your site.
  • The servers play an essential role in the final grading process.

How to upload your local site is the topic of the next two sections.

Back to the top

Secure File Transfer Protocol (SFTP) and Secure Shell (SSH) Software

Secure file transfer protocol (SFTP) and secure shell (SSH) software is essential for the Web Development course.

  • SFTP is needed to load files from your local machine onto the the college’s ASP.NET web server.
  • SSH is needed to access the SQL server from your local machine. In particular, you will use SSH to create a 1433 tunnel from your local machine through the college Linux server to the SQL server. For more details, see: Accessing SQL

For a long time, students could download free SSH/SFTP software from the college web site. This software has shown incompatibilities with Windows Vista though it may work with the newer Windows 7.

Here is a link to a free SSH/SFTP software package that we found to work well for students in this course:

bitvise Tunnelier

Professor Rasala uses Van Dyke SecureCRT and SecureFX but these products are licensed and not free.

Uploading Files To Your ASP.NET Web Site via SFTP

The first step to accessing your ASP.NET site is to create a profile with the information required for SFTP access. Depending on the product, you will either create the profile directly using the SFTP software or indirectly using the companion SSH software. You will need the following settings:

  • Host Name: sftp.development.ccs.neu.edu
  • User Name: ccis-windows\yourusername
  • Port Number: 22

Give this profile a convenient name that you will remember.

Notice that the user name has the special form:

ccis-windows\yourusername

This form is required because SSH/SFTP is validating you through Windows authentication but is not smart enough to add the prefix automatically.

Once your profile is set up, you can use SFTP. For some products, you can access SFTP directly. In that case, do so. For other products, you must first login via SSH and then open an SFTP window. In that case, you will get the following message after SSH login:

Shell access has been disabled by the system administrator.

Do not be disturbed since this is normal. The CCIS systems staff will permit you to login but for security reasons will not permit you to execute any commands from the login shell you have just opened. You may only execute available commands from the SSH menus. You will use the SSH menus to initiate file tranfer and to disconnect at the end.

Once you have an open SFTP window, you should be able to drag files in one pane representing your local machine to directories on the ASP.NET server or vice versa.

You should see a directory v4.0 in your home directory on the ASP.NET server. As we have said above, all files that are to be served from the web must be in the v4.0 directory. The home directory and other subdirectories may be used to store files that may be accessed by code on your site but may not be directly delivered over the web.

Back to the top

Accessing Your Site from a CCIS Lab PC

It is easy to access your home directory on the ASP.NET server if you are logged into a CCIS Lab PC. It is also problematic as we will explain below.

Step 1: Open the Windows Explorer program.

Step 2: Type in \\development\net\home\yourusername as the directory location in the URL bar.

This is illustrated in the following (old) screen snapshot of Rasala’s directory on the ASP.NET server.

File Transfer Snapshot

You may now drag-and-drop or manipulate files at will. However, here is the problem. Sometimes, when you drag files from your lab PC to the the ASP.NET server, Windows does not set the target file permissions right. Then, you have problems downstream. This is such an annoyance that we recommend using SFTP for file transfers even when on a CCIS lab PC.

Warning: You may even use Visual Studio to edit files on the server directly if you are on a CCIS lab PC but this is discouraged in the strongest possible terms. Editing files on the server live may lead to having mangled or incomplete files served to users. In the worst case, after a live edit, a site may fail to serve at all. A few years back, one student who insisted on live edit as a strategy took 5 weeks to get a site working. This was simply insane.

Back to the top

Final Remarks

From a software engineering viewpoint, the only appropriate behavior is to write and thoroughly test all files locally and then to upload only when you believe the files will work. After upload, you must test to confirm or refute your belief that everything is fine.

Keep in mind the mantra of all software develoment: Backup! You should always have copies of your files in at least 2 places. If you are logged in on a lab machine in the college, then you should save your files on the Z: directory which is directly tied to your UNIX login directory and is therefore backed up by Systems. If you are using your own machine, make a backup strategy and live by it. In either case, if you are about to make dangerous changes to your local site, make a temporary copy of the local site somewhere so you can fall back if needed. You can always delete the temporary copy once you know that all is well.

Back to the top