For example,
1. run apache or port 81 or whatever port you'd like, just not 80
2. define a web server external app, address should be "127.0.0.1:81". no need to set "environment".
3. add a script handler for suffix "shtml", using the web server external app as handler. If can be done at server level or vhost level.

If any question, please read the online help first for each individual configuration option.

Yes, I think so.
Is LSWS using Apache's httpd.conf? If yes, you need to create a backup copy of the httpd.conf for LSWS.
Or, you can use "Apache port Offset" configuration to let LSWS run on the standard port 80 while apache on port 79 or something.

The reason I am asking is that all ports are 80 in old httpd.conf, that is what I am guessing why LSWS is working at port 80 too. so, if I change them to 8080, will LSWS stop working at port 80? because they are using the same httpd.conf.

Yes, LSWS will change to port 8080 after restart since it uses the apache configuration.

Like what I said in last post, configure apache to use port 79 and 442 for SSL, set "Apache port offset" to "1", so LSWS will use port 80 and 443.
The external app address should change to "localhost:79" as well.
restart apache and LSWS, it should work.

Firefox blocked access to port 79.
Not sure about the IE error. Is port 79 blocked by firewall? open a dos prompt and try "telnet <ip> 79" see if you can connect to the server.
If you can, it probably is something wrong with the httpd.conf.

3.0RC1 package has been updated to address a configuration issue related to shtml forwarding. Please update.

however, when I clicked any links to a shtml page, it seems still with litespeed, not sent to Apache.

I already setup the correct settings for external app, i.g. localhost:78, and script handler for suffix "shtml". also restarted lsws, it's ok when I enter by hand at browser, like, http://www.mydomain.com:78

I think the problem probably is the namevirtualhost, if you only host one web site on one IP, you don't have to use namedvirtualhost. And in the <VirtualHost ...> directive, see if you can get rid of the port number only leave the IP address.

The problem probably is because LSWS send Apache Host header with "www.mydomain.com", but Apache only like "www.mydomain.com:78".