-
- What is DG3
- The different components
- Requirements for running DG3
- Installation of DG3
- Additional installation steps
- Select which web server to use
- Hello World application
- Intro to CMS
- Setting up DG3 as a CMS
- Editing pages
- More about pages and urls
- Structuring a page using the grid
- Adding menu to pages
- Add images to the application
- More formating
- Sending email from contact us
- Adding menu to template
- Deploy the web site
- Storing the pages in database
- Create record
- Auto fill field
- Field validation
- Enable save button validator
- Add new button to template
- View document
- List documents
- Fix selection in menus in template
- CRUD Create Read Update Delete
- Intro to blogs
- Add user authentication
- Bootstrap authentication
- Let user change their passords
- Add reset password
- Login dialog box
- Extending the CMS to a blog
- Extend table for blogging
- Edit blog entry
- View blog entry
- User registration
- User password validation
- User field validation
- User auto login
- User extra registration fields
Deploy the web site
In DG3 there are two methods of deploying a new web application:
- Local deployment
- Remote deployment
The local deployment is used if you are running DG3 development on the same computer as you deploy web application. The remote deployment is used when deploying on another computer than the one you are working on (it is possible to use remote deployment on the same computer as you are working on to test it out by setting up the remote server as localhost or 127.0.0.1). The difference between the two are that remote deployment need DG3DS (DataEase Generation 3 Deployment Server) and local deployment don't.
Deploy your DG3 CMS
The current version of the DG3 CMS is very simple. It is only a few pages and no tables in our database. To test deployment, you can choose the local deployment to create a real web server on you local computer. We will come back to a real remote deployment in a later chapter.
First make sure you deployment web server is properly set up. This is done in the webserver section by do the the changes of how you want to run your server (as a service or not) or which built in web server to use. I suggest you do not make any changes as you probably do not want to automatically start a full blown web server on you development computer, but make sure you do a save as this will do the setup. If you do not save without any errors, you will not be able to use the deployment module. Any errors you get when save is probably related to file rights. Look here for help.
webserver section
save webserver settings
Next make sure that no application is using ip port 80. The usual application doing just that is Skype an IIS (Microsoft Internet Server). In Skype you select tools->options->advanced setting->connection and remove the check on "Use port 80 and 443 as alternatives for incoming connections). IIS you simply stops in services and make it start manually. To make sure you do not having any other services listening on port 80, you can use "netstat -a" from the command promt to look for any services on you computer that lists as LISTENING:80. If you have that, the DG3 server will not start.
Now you are ready to do a deployment. Just go to the Deployment section of DG3 and double click an your application in All applications list.
- Make sure you change the Web server name to localhost
- Save deployment setting
- Press "deploy the application to the server".
Now you will see the initial process of deployment. When it is done, just press start on the "manually start web application" and "start web server" and you should be able to open your application in any web browser using the url http://localhost.
deployment section
Save deploy app settings
Deploy application
That's it. You are now running your first DG3 apllication on a real web server and not only in the internal development server.
I want to access my server from other computers
If you had done this to a internett connected server with a fixed ip and used the www.myaddress.com in the web server name, this would now be a live real web site that could be accessed by the whole world. This is the preferred way of doing it, but if you just want to test this or show of a little, you can always simulate a real server on you development computer by one of two methods, edit host files on all users or using a dynamic dns provider and port forwarding. Port forwarding can be used by both methods but host editing is har to use outside a confined local network.
Edit your hosts file
On your computer, you have a text file that can be used to give computers name. It is located in \windows\system32\drivers\etc and called hosts. To be allowed to edit this file on modern desktop computers, you have to change the rights on the file from read only to read/write. Then you can open it in ex. notepad and start adding entries.
127.0.0.1 myapp 127.0.0.1 myotherapp.mydomain.com<br>
This means that you can access you web application using the name myapp and anohter myotherapp.mydomain.com in you browser. If other users want to do the same form other computers you have to replace the 127.0.0.1 with our real ip address and open the firewall to let trafic for port 80 through. How to do this is described n the next section.
Using a dynamic dns provider and port forwarding
If you are using a traditional DSL line or sits behind NAT and gets IP by DHCP (that is your ipconfig shows address 192.168.x.x or 10.x.x.x and your real address changes) you can still get the server online with an real address from the internet. The first thing to do is to set up a service like http://dyn.com that will give you a dns name for you ip address. Then you you will have to install their software and register an account. This will give you an address like myname.homedns.org. The next is to make sure your firewall let trough port 80. This looks different depending on the windows version and software you have installed but usually you have to go into advanced settings and Inbound Rules. Add a new Rule for a Port and set port 80 as a Specific local port. Then allow the connection for all networks and give it the name DG3 or HTTP. Next you have to find the ip address of your computer. This can be done by going to the command promt and run ipconfig. Depending on how you are connected to the network, you will find and entry named Ethernet adapter Local Area Connection if you are using a cable to a switch/hub. Then you will have to add a port forward to this ip in your internett router (usually at an address of 192.168.1.1 if your local ip is 192.168.1.x). To do this log into your router and locate the advanced section and advanced setup. This is different for each kind of router out there. Then locate a section called Port Forwarding. Here you need the add your ip address of you computer found earlier and port 80 that is http traffic for DG3 real web server.
Thats it. Now you can deploy you DG3 application using the name you registered at the dynamic ip service like myname.homedns.org. Mind that you should also make sure that your computer keeps it ip. That can be done by reserve the address in the LAN Setup section of your router. You should not use this for any other purpose than demonstration as most ISP do not allow users to have their own web server by clauses in the contract.
If you still want a better address than the one given to you by the dynamic dns provider or you want to have more than one address at the server, you can simply by a domain at any isp and simpy add a CNAME entry that points at your myname.homedns.org address. Then you use mysub.mydomain.com as the address when you deploy the DG3 application. Since DG3 operates using named virtual server, you can add as many applications as the server can hold as long as you always use different names for each application.