Addons

Java Chat / Volano Chat

We provide your choice of Basic Java Chat or Volano Chatprograms for use on your domain. Extra charges apply for use of this feature. See our fee schedule for pricing. Examples of these chat programs can be found on our site located within the "Site Map" key on the navigational bar above. If you have applied for Chat, look on your website for a chat directory. It will already be configured for your server. To join the chat, with your browser, go to:

http://www.yourdomain.com/chat

The page can be customized, but leave all the tags alone that have to do with <APPLET CODE>.
These rooms are capable of upto 50 users at one time.


Real Audio/Real Video/G2

Real Audio or Real Audio/Video is including on some accounts and on all others it's available for an extra charge. See our fee schedule for details.

Real Audio is a real time audio transmission/player system. A digital audio stream is transmitted from the server over the Internet to the destination and played immediately, rather than being stored to disk first and then played.

Each audio clip requires two files: a metafile with extension .ram, and the digital audio clip itself, with extension .ra.

The .ram file holds one or more lines of ASCII text, each of which references the .ra file to be played when the .ram file is accessed by the browser.

Entries in .ram files have the form:

rtsp://machine.propagation.net/your-user-name/name-of-clip.ra
--stop--
pnm://machine.propagation.net/your-user-name/name-of-clip.ra

"machine.propagation.net" - replace "machine" with the actual name of the server you are on.

Place your .ram and .ra files in the realaudio subdirectory under your web directory. Remember that .ram files must be uploaded in ASCII mode while .ra files must be uploaded in BINARY mode. You may then access these files via a web browser at:

http://www.yourdomain.com/realaudio/file.ram


Miva - HTML Script

Miva makes building dynamic, data driven web pages as easy as HTML. You can quickly develop interactive web pages that are 100% browser independent. Miva runs on the web server, interprets the Miva tags and outputs pure HTML to the browser. You can also use Miva to output Javascript and other browser languages, and use the built-in database to easily manipulate and publish data.

Full documentation and usage support for HTML Script can be found at http://miva.com/. Miva offers a variety of features and you should visit their site for more information.

We are running version 3.22 of HTML Script. The following is what you will need to know for use on your domain.

The script being called is "miva", which is in your cgi-bin. The active pages (pages with .hts or .mv) need to be placed in your root www directory, not in subdirectories. A sample URL call for this would be as follows:

http://youractualdomain.com/cgi-bin/miva?yourpage.mv

HTMLSCRIPT has a variety of pre configured products that require path information
we have preconfigured miva to automatically look into the www directory for data files, so the following would be used if the data files are in the main directory

EXAMPLE.

<export file="file.dat">


To call Htmlscript thru the secure server use the following:

https://machine.site-secure.net/cgi-bin/smiva?yourdomain/yourpage.mv

Machine should be replaced with the name of the system your on, i.e. bob, vermillion, crimson, etc.


More On The Miva Engine.
The Miva Engine makes building dynamic web sites as easy as writing HTML. Quickly develop server and browser independent dynamic sites using the XML standard. Dynamic sites that integrate scripting, database, and commerce can be developed and tested on a Microsoft workstation and deployed on Microsoft or Unix servers.

SUPPORTED STANDARDS
  HTML   SGML   XML   HTTP
  POP3   SMTP   ISAPI   CGI
  NSAPI   UNIX   WINDOWS   JAVA
  ODBC   xBASE   APACHE   JAVASCRIPT

Miva runs as a pre-processor on the web server, interprets the Miva tags and outputs standard HTML, XML, Javascript, and other user interface code to the browser. Use the built-in database and ODBC interfaces to easily manipulate and publish data. Anyone that knows HTML can use Miva.

Miva (Htmlscript 3.0) tags are XML compliant and include:
<MvEVALUATE>, <MvIF>, <MvELSE>, <MvWHILE>, <MvEXPORT>, <MvIMPORT>, <MvCOMMERCE>, <MvLET>, <MvASSIGN>, <MvCALL>, <MvHIDE>, <MvEXIT>, <MvCOMMENT>, <MvFUNCTION>, <MvMAIL>, <MvOPEN>, <MvCLOSE>, <MvFIND>, <MvSKIP>, <MvGO>, <MvADD>, <MvUPDATE>, <MvDELETE>, <MvUNDELETE>, <MvMAKEINDEX>, <MvSETINDEX>, <MvREINDEX>, <MvPACK>, <MvPRIMARY>, <MIVA>...


Miva Merchant 4.16 (Compiled version) installation instructions.

Miva Merchant 4.16 basic setup instructions for new and upgraded installations are included below. We will place the proper files after you purchase a license for your domain, this is generally done within 12 hours of purchase.  Please contact Sales for more info about Purchasing

Miva Merchant if it didn’t come with your account or use the online order form.

Note: If you already have an older 4.x version installed the upgrade License isn't needed.

Upgrade instructions:

Important note: When upgrading Merchant do not use Netscape 4.0 or older browsers as they tend to crash during the upgrade. Either use Internet Explorer or a later version of Netscape.

For upgrades from previous versions of Miva Merchant use the following URL to complete the upgrade: http://www.youractualdomain.com/Merchant2/upgrade.mvc

NOTE: Verify your store's Site Configuration URLs with the examples below.  The first 3 will need to be reset after the upgrade using the admin page at http://www.youractualdomain.com/Merchant2/admin.mvc.

Please note that upgrading from Merchant 1.xx will require importing the old store rather than using the upgrade.mv URL above.

New installation instructions: To start using Miva Merchant 4.16 follow the steps below using your browser

Go to http://youractualdomain.com/Merchant2/setup.mvc

Fill in the information. You will need a valid license number to proceed for new installations. After filling in the basic information, you will be asked to verify paths.

URL to Miva Merchant:

http://www.youractualdomain.com/Merchant2/merchant.mvc?

Secure URL to Miva Merchant:

https://machine.site-secure.net/userid/Merchant2/merchant.mvc?

Secure URL to Miva Merchant Administration:

https://machine.site-secure.net/userid/Merchant2/admin.mvc?

Base URL for Graphics:

http://www.youractualdomain.com/Merchant2/

Secure Base URL for Graphics:

https://machine.site-secure.net/userid/Merchant2/

Root Directory for Modules:

/Merchant2/

Secure Root Directory for Modules

/userid/Merchant2

Note: In the secure calls above, machine must be replaced with the name of the server that you're located on and userid is your domain name without the extension (.com).

Miva Merchant 4.12 (or 4.13) Uncompiled version installation instructions.

Miva Merchant 4.12 (or 4.13) basic setup instructions for new and upgraded installations are included below. We will place the proper files after you purchase a license for your domain, this is generally done within 12 hours of purchase. 

Note: If you already have an older 4.x version installed the upgrade License isn't needed.

Upgrade instructions:

Important note: When upgrading Merchant do not use Netscape 4.0 or older browsers as they tend to crash during the upgrade. Either use Internet Explorer or a later version of Netscape.

For upgrades from previous versions of Miva Merchant use the following URL to complete the upgrade: http://www.youractualdomain.com/cgi-bin/miva?Merchant2/upgrade.mv

After the upgrade verify that the URLs below are correctly set in your store's Site Configuration.

Please note that upgrading from Merchant 1.xx will require importing the old store rather than using the upgrade.mv URL above.

New installation instructions: To start using Miva Merchant 4.12 or 4.13 follow the steps below using your browser

Go to http://youractualdomain.com/cgi-bin/miva?Merchant2/setup.mv

Fill in the information, you will need a valid license number to proceed. After filling in the basic information, you will be asked to verify paths.

URL to Miva Merchant:

http://www.youractualdomain.com/cgi-bin/miva?Merchant2/merchant.mv+

Secure URL to Miva Merchant:

https://machine.site-secure.net/cgi-bin/smiva?userid/Merchant2/merchant.mv+

Secure URL to Miva Merchant Administration:

https://machine.site-secure.net/cgi-bin/smiva?userid/Merchant2/admin.mv+

Base URL for Graphics:

http://www.youractualdomain.com/Merchant2/

Secure Base URL for Graphics:

https://machine.site-secure.net/userid/Merchant2/

Root Directory for Modules:

/Merchant2/

Secure Root Directory for Modules

/userid/Merchant2

Note: In the secure calls above, machine must be replaced with the name of the server that you're located on and userid is your domain name without the extension (.com).

Configuring Merchant to use the LinkPoint API In Merchant 4.x

The CSI Digital Certificate is entered directly into Merchant using the admin URL.

Use the admin URL:

http://youractualdomain.com/cgi-bin/miva?Merchant2/admin.mv

Click on the arrow next to "Stores", then on "Payment Configuration", then on Cardservice/LinkPoint Payment Gateway.

Use the following info which you received from Card Services International:

Store Name: 6 digit number that CSI supplied (Customer ID)

Server: secure.linkpt.net

Port: 1139

Digital Certificate: Supplied by CSI. Copy the whole thing into the box.

Should start with -----BEGIN RSA PRIVATE KEY-----

and end with -----END CERTIFICATE-----



Click here for the complete Miva Merchant 4 Manual

Miva Order

Miva Order v1.15

Miva Order basic setup instructions

We will place the proper files after you purchase a license on your domain, this is generally done within 12 hours of purchase.

To start using Miva Order follow the steps below using your browser.

Goto http://youractualdomain.com/cgi-bin/miva?Order/setup.mv

Fill in the information. You will need a valid license number to proceed.

After filling in the basic information, you will be asked to verify paths.

URL to Miva Order:

http://youractualdomain/cgi-bin/miva?Order/order.mv+

Secure URL to Miva Order:

https://machine.site-secure.net/cgi-bin/smiva?userid/Order/order.mv+

Secure URL to Miva Order Administration:

https://machine.site-secure.net/cgi-bin/smiva?userid/Order/admin.mv+

Base URL for Graphics:

http://www.youractualdomain.com/Order/

Secure Base URL for Graphics:

https://machine.site-secure.net/userid/Order/

Note: In the secure calls above, machine must be replaced with the name of the server that your domain is located on.

NOTE: Authorize.net should NOT be chosen as a payment gateway for Miva Order. It no longer works with Order. Also, payment gateways cannot be changed in Miva order without completely reinitializing the store (loosing all previous content).


Majordomo

Please contact sales for the pricing for majordomo lists if this is not included as one of the features of your account. If you wish to to have it activated, email us and tell us the name you would like for your domain's majordomo listserver. Make sure it has a different name than the name of your domain. For instance if your domain was fredhappy.com, you might want to ask for fredhappydomo.

Once we have set up your Majordomo listserver, you can get help by sending email to majordomo@yourdomain.com. On the first line of your email, just type the word HELP. You will be sent a general help file. If you want more detailed instructions on using Majordomo, you can email:

For full instructions domo@site-secure.net

Another great resource for Majordomo information is:

http://www.greatcircle.com/majordomo/majordomo.manual.txt


Microsoft FrontPage Extensions

Publishing a Web
After you have built your html documents and are ready to upload them to our server:
1. Open the web you've created on your PC using FrontPage Explorer.
2. Choose File > Publish
3. If your "Destination Web Server" doesn't appear in the Publish window (it won't the first time you publish to our server)
CHOOSE "More Webs" and type the location of the web to publish to. Hit return.
IMPORTANT: Use www.yourdomain.com as the Destination Web Server to publish to our server.
Leave the "Destination Web Name" BLANK.
4. You will be asked for your USERNAME and PASSWORD. This is your domain's
USERNAME and your FrontPage PASSWORD (which may be dfferent than your regular telnet/ftp/POP password). If you're not sure what it is or if you aren't allowed past this point, you'll need to contact us for a new FrontPage password.
5. You can watch the progression of the upload by looking at the bottom left corner of FrontPage
Explorer.

Opening an Existing Web

  • 1. Open FrontPage Explorer and choose File > Open Front Page Web.
    2. You can now choose to open a previously created web on your PC or your web on our server.
    3. Highlight the appropriate web or type in the web address (www.yourdomain.com) and click OK.
    4. Enter your USERNAME and FrontPage PASSWORD if required.
    5. Make modifications and recalculate links if needed.  (See FrontPage help docs for info on when it's     neccessary to recalculate links.


Troubleshooting Common Problems with FrontPage

Getting error - "Root Web Busy"
FTP or telnet to your site and remove the "service.lck" file in /www/_vti_pvt.  This usually happens when an FrontPage session is interrupted before completion.

Server timing out when publishing large sites.
This difficulty arises when the uploading link times out in the process of copying the web to our server.  The only suggestion Microsoft has offered so far is to break the main web into a group of sub webs on your PC, then upload these individually.  If this problem persists for you, please contact support.

Getting Error - "Front Page Extensions not Installed"
We often see this error being reported even when the extensions have been installed.  If you get this error, please contact support and we'll make sure the extensions are installed and repair them if necessary.
NOTE:  The extensions are easily corrupted.  Please use only FrontPage Explorer to update your web site on the server, not FTP.

I published but my web's not there!
This will happen when the "Destination Web Name" is filled in when publishing to our server.
This box should be left blank.  If you put any other name in this box it will create a subdirectory off of your root web and copy all of your files into it.  Your site will exist under a subdirectory instead of at the top level /www where it should be.

My counter, bbs, guestbook, etc. isn't working.
These problems are generally due to incorrect permissions on either the directory, file(s) or cgi script(s) that are associated with them.  Please don't change the permissions of your files or directories unless you have a specific reason for doing so and you know what effect it will have on your site.

My forms won't work through the Secure Server.
The call to a cgi script using the Secure Server must not be within a webbot.  Use a normal cgi call in your html script for Secure Server calls.

My search bot doesn't return any results.
The /www directory must be world readable AND you need to recalculate links BEFORE publishing (or after editing directly on the server).  If it still doesn't work:  FTP to
the server and go to the /www/_vti_txt/default.wti directory.   Delete any files that begin with "ALL.".  Don't delete any other files.  Then using Windows Explorer, do the same thing on your PC.  Recalculate links, test locally with your browser and publish.

FrontPage starts the Web Publishing Wizard when I try to publish.
Cancel the operation and contact support to have the FrontPage extensions installed/repaired.

Why is my page renamed on the server when I publish?
The "Default Document" of your web is automatically renamed by the server to what is required by the configuration of the server.  For example, if you've named the main page "index.html", it may be renamed "default.html".  Just check the links to your main page to make sure they refer to it the same way.

NOTE: If you are using FrontPage, you should NEVER use regular FTP to upload your files. This will damage the extensions. Stick with one or the other all the time.


Additional Users on your Domain

If you have asked for additional POP/FTP/Telnet accesses on your domain, the users of these additional accounts can access the server via FTP, Telnet, and Email with the following parameters:

Hostname: yourdomain.com

Username: their unique username

Password: their unique password

POP Account: their unique username@yourdomain.com

SMTP Server: yourdomain.com

When they login via FTP or Telnet, they will be taken to their directory, where they will see their own www directory


Java Servlets (Unix Developer only)

Apache Jserv Java Servlets

What is it?
Apache JSSI is Java servlet that provides support for including dynamic servlet output from within HTML documents via the <SERVLET> tag as specified by the JavaSoft Java Web Server.

Java™ Servlet technology provides web developers with a simple, consistent mechanism for extending the functionality of a web server and for accessing existing business systems. A servlet can almost be thought of as an applet that runs on the server side -- without a face. Java servlets have made many web applications possible.

Servlets are the Java platform technology of choice for extending and enhancing web servers. Servlets provide a component-based, platform-independent method for building web-based applications, without the performance limitations of CGI programs. And unlike proprietary server extension mechanisms (such as the Netscape Server API or Apache modules), servlets are server- and platform-independent. This leaves you free to select a "best of breed" strategy for your servers, platforms, and tools.

What does it do?
Apache JSSI parses JHTML files, executes the servlets (instructions) as specified by the <SERVLET> tag and replaces those tags with the output of the executed servlet. The <SERVLET> tag can be seen as the server side equivalent of the <APPLET> tag.

Note that SSI (Server Side Include) files for java servlets are called JHTML files in the apache context while SHTML files are usually for traditional SSI (like <!--#ECHO -->). This is a bit confusing since in the Java Web Server (SUN) context SHTML files are used for java servlet SSI files and JHTML is used for page compiled pages. Java Apache SSI does not support page compiling.

How do I use it on your servers?

Place the compiled .class file for the servlet into the directory labeled “servlets” within your /home/www/your-username/. The direct path to this directory would be /home/www/your-username/servlets and would be accessed on the web by hitting http://www.yourrealdomain.com/servlets/serverlet.class . We have setup a test servlet in each domain at http://youractualdomain.com/servlets/Hello


Example JServ Servlet Code:

__________________________START OF CODE________________________

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class Hello extends HttpServlet

{

    public void doGet (HttpServletRequest request, HttpServletResponse
response)

        throws ServletException, IOException

        {

            PrintWriter out;

            String title = "Servlet Test";

            response.setContentType("text/html");

            out = response.getWriter();

            out.println("");

            out.println(title);

            out.println("");

            out.println("Hello, World.

 

"); out.close(); } } _________________________END OF CODE_________________________________

To compile this servlet, save the code as filename.java in your /home/www/username/servlets directory. Then execute the following command:

"javac filename.java". This will output the following file: "filename.class" This is the filename you would call through your browser using the following URL:

http://www.youractualdomain.com/servlets/filename (note you do not have to include the ending .class when calling the servlets through a browser).

Writing Servlets

The Servlet interface provides the foundation for all servlets. All servlets must either implement this interface or be extensions of a class which implements it. The Servlet package provides a class called HttpServlet which implements the Servlet interface, so as a servlet developer, much of the work is done for you. The Servlet interface allows the creation of generic servlets, but we will only look at how to create servlets that act as CGI scripts. For this, all you have to worry about is the HttpServlet class.

Listing 1.

Let's step through the code of the simple servlet shown in Listing 1 to see how it works. This servlet overrides the doGet method provided by the HttpServlet class. doGet is called when a client makes a GET request to the servlet. Here we have the servlet respond with a simple web page that gives the standard ``Hello World'' message. The doGet method gets two objects, HttpServletRequest and HttpServletResponse, which encapsulate information that allows the servlet to obtain information from and communicate with the client. For example, the HttpServletResponse object contains a PrintWriter object that can be used to send information back to the client. In this example, we use it to send our ``Hello World'' message back to the client. We also use the setContentType method of the HttpServletResponse object to inform the client that it will be receiving text/HTML data from the servlet.

Now that we've seen a simple example, let's step back a bit and look at how HTTP Servlets work. Servlets extending the HttpServlet class handle all of their client requests through its service method. The service method understands standard HTTP requests, and calls appropriate methods to handle each request. In the example above, the service would recognize the GET request and call the doGet method accordingly. Similarly, doPost, doPut and doDelete methods are provided to handle other types of HTTP requests.

The Life Cycle of a Servlet

A servlet's life begins when the servlet's init method is called. The web server calls the init method when it loads the servlet, but before any client requests are handled. The init method is called only once when the servlet is loaded. So, if you need to perform any initialization before your servlet starts handling requests, overload the init method as follows:


public void init(ServletConfig config) throws ServletException {
		super.init(config);

		...
	}

The init method is passed an object which contains configuration information about the servlet. It is a good idea to store this object to make it available if the client needs it. The easiest way to do this is to call the init method of superclass and pass the ServletConfig object to it. One final tip regarding the initialization of servlets: if your initialization fails and the servlet can't handle client requests, throw an UnavailableException. After initialization takes place, the servlet is up and the service method handles client requests. Finally, when the servlet is unloaded from the web server, its destroy method is called. The web server waits until all service methods are finished or a certain number of seconds have passed (whichever comes first) before calling the destroy method. In the case of long-running service methods, it is possible the destroy method will be called before all service calls have been completed.

This situation can be handled with a few additional methods and variables. First, create a variable that keeps track of how many service methods have been called and provide synchronized methods for increasing and decreasing the counter, as well as one to return the value of your service counter.


public MyServlet extends HttpServlet {
   private int numServices = 0;
   protected synchronized void enterService() {
   numServices++;
   }
   protected synchronized void exitService() {
   numServices-;
   }
   protected synchronized int serviceCount() {
   return numServices;
   }
}

Now, that we have these counters, we need to modify the service method to increment and decrement them accordingly. This is done by adding a call to the enterService method at the top of the service method, calling the service method of the superclass to handle the real work and then decrementing the counter by calling the exitService method.


protected void service(HttpServletRequest req, HttpServletResponse
resp)
   throws ServletException, IOException
   {
   enterService();
   try {
   super.service(req, resp);
   } finally {
   exitService();
   }
   }

Next, a flag is needed to determine if the servlet is in the process of shutting down. To accompany this flag, use accessor methods to set the flag and return its value.


MyServlet continued {
   private Boolean exiting;
   protected setExiting(Boolean flag) {
     exiting = flag;
   }
   protected Boolean isExiting() {
      return exiting;
   }
}

Now the destroy method should first check if any services haven't completed, then loop until all services are finished.


public void destroy() {
   if (serviceCount() > 0) {
      setShuttingDown(true);
   }
   while(serviceCount() > 0) {
      try {
      Thread.sleep(interval);
      } catch (InterruptedException e) {
      }
   }
}

Finally, modify any of your methods that may run for a long time to check if the servlet is shutting down, and act accordingly.


public void doPost(...) {
  /* You could do something like this or put
   * the check into a loop
   * that takes a long time */
   if(!isExiting) {
   ...
   }
}
More information on Java Servlets: "Fundamentals of Java Servlets PDF"