I'm moving this thread here, because it wasn't getting any attention. I had it buried in some obscure tutorial comment section--a niche void of the netherworld. Anyway, I copied it all over because I was tired of listening to myself. My hope is to help those, like me, who are total n00bs to websites and web hosting. Be sure to read thru the post first or you'll make the same mistakes I did! :-). It can be discouraging. Also, I hope to get help from others who have forged ahead, and who can shed some light on questions I have as they develop. Thanks in advance.
3/21/2010 - Swallowed the red pill...entering the rabbit hole...Mad-Hatter driving me nuts!
How do I make the website I created from a tutorial with DW4 (trial version) available to others on the web? I want to host it myself...on my own computer...the same one I'm using now.
My setup: Windows XP Pro, xampp, and DW4. I have an AT&T DSL modem that acts as a router (i can configure it to forward ports, etc.). Also, I have a registered host name with dyndns (example: myhost.dyndns.org). Moreover, I have an update client from dyndns that supposedly updates my IP address if/when my ISP changes it.
Correct me if I'm wrong, but as I understand it an end user types in my dyndns host address into their browser's address bar. Dyndns redirects them to my external IP, which I'm assuming is my router's IP. Then, my router forwards the request to my pc, which is a different IP, right? So, if I setup a virtual host on my pc that redirects any request coming from my dyndns host to a specific vhost folder, why would I need a static IP address? I set one up anyway, because just about every post I read on the subject of hosting your own website said to do so.
I've installed Xampp and both the Apache and MySQL apps are running. I've also started the FileZilla app. I have forwarded the TCP ports on my router (21, 80, 8080, 3306). I have a registered host name at DynDNS.com, and their Open Port Tool indicates that my external IP is open and accepting connections. I have completed all three parts of the "Building your first dynamic website..." This created a "Feedback" website that I am trying to "put" on the web (just to learn how to do it). I edited the httpd and httpd-vhosts files to setup virtual host containers for my localhost and DynDNS host (using NameVirtualHost = *:80 consistent with my containers, and yes I added the permissions directive to the httpd-vhosts file). I did this because, from what I gathered on several forum posts, I needed a virtual container to redirect requests coming from my DynDNS host to the proper website. My "feedback" website functions just fine locally.
In an attempt to "put" my website on the web where others can see it, I setup a virtual host folder called E:/vhosts/Feedback. The directoryroot in httpd-vhosts points to this location. In the DW4 "Manage Sites..." dialogue box for remote info I selected local/network, localhost, and targeted the E:/vhosts/Feedback folder. This seemed to work as the site was "uploaded" to that folder (I could see them in windows explorer). However, I still could not visit the site from the web. Next, I tried several different remote info configurations. The only one I felt came even close to working was when I ran the FileZilla app and used FTP (to configure the remote info in "Manage Sites..."). With the FileZilla admin window open I could actually see myself logging in, but it could not find the E:/vhosts/Feedback folders. The error said that the file did not exist or there was a permission problem. Well, the files do exist (I can see them in windows explorer); and I thought that entering the following directive in my httpd-vhost file would avoid any permissions issues:
Allow from all
So, I finally broke down and bought custom DNS services from dyndns.com for $30/yr. This allowed me to register a domain name in addition to the free hosting service I had already signed up for. I was expecting an email with the FTP info for the remote info dialogue window in DW4, as mentioned in some posts. I did NOT receive any such an email. Now, I feel like I just wasted 30 bucks.
I have spent 2-3 hours a night for that past few days trying to figure out how to "put" my Feedback website on the web either from my own computer or a hosting service. I knew nothing about websites prior to downloading the DW4 trial version roughly 6 days ago. I would not have been able to tell you the difference between a static and dynamic site. I've learned a lot since then thanks to these tutorials and moderator feedback, but only enough to realize how much more is out there. I've only scratched the surface so to speak. However, I've been running in circles lately and I just don't understand what's going on. Any help would be greatly appreciated.
I find it simply astounding that these tutorials would go so far as to instruct me on how to download, install, and setup xampp, create a database in myPHPadmin, setup local and test servers in DW4; and yet, somehow neglect to instruct me on how to configure these apps to make the site available from the web. I mean, what is the point of creating a WEBsite if I can't put it on the WEB?!
3/22/2010 - Horse bucked me off into the mud...time for a new horse!
Good news: I got a refund from DynDNS. They only offer domain name and host name services--not website hosting! I had misunderstood them to be a web hosting service. Also, I think I know what the problem was. The static IP I set from my router was still "private." I needed to have set it to a public, external, static IP, right? Anyway, I've given up on the whole self-hosting thing. Gonna try GoDaddy.
3/23/2010 - Remember that story about the frog who could only jump 1/2 the distance to the end of the dock? I know EXACTLY what that feels like...
Now, I have some kind of database problem. I was successful in uploading my feedback website to GoDaddy. However, when I viewed my page there were some "localhost" SQL database errors that I'm assuming were generated because the database I was referencing in my site is actually located on my machine. So, I created a similar database on GoDaddy's PHP server, but when I go to update the location of my database in DW4 (double-clicking the db in the databases panel) it times out looking for the server, and crashes DW4 every single time. A window pops up that says "File Activity - localhost" and it just sits there until I close it. Then, DW4 crashes (I click the End Now button).
What do I have to do to get DW4 to use the databases I created on my host's PHP server?
3/24/2010 - Eureka! I'm going streaking! C'mon everyone!
It works! I can't believe it actually works! It's sooooo beautiful when it works!
It was the Test Server configuration! The name is what misled me. I figured the Test Server was for testing purposes only--a local place to check the functionality of my site before uploading it. But, no! It actually determines which Application Server is acting on my website. That's why DW4 kept crashing. I was attempting to establish a database (MySQL) connection to my Host's Application Server with my Test Server configured for localhost! I had a hunch this was the case, but I wasn't sure where the Application Server was located--whether on my Host's web server or on their Application (PHP) server. I was trying to put the SQL connection info in the Test Server configuration box. Recalling a diagram from a tutorial it dawned on me that they're both in the same place! Once I set my Test Server to the same location as my web server (remote info)...voila! The only difference being the pathname: "/" for the test server, and "/feedback" for the remote info. I could then edit my database connection without crashing. I noticed I had to export my database from my local App Server (myPHPadmin), and import it to my Host's App Server (also myPHPadmin) in order for the website to function properly.
So, this experience has raised some new questions:
1. Why aren't there profiles within the site manager that would allow me to select whether I want to test locally or remotely? As it is, I have to go in and manually change the test server to my machine's local App Server each time I want to test locally, and then change it back to my Host's App Server when I want to upload my site. Moreover, I have to edit the database (MySQL) connection to point to a local database stored on my app server to test locally, and change it back to test remotely; which means I have to export the database from my Host's App Server, and import it to my local App Server!
2. If I had more than one test server, presuming I diversified my Hosts to have a backup site ready to go in the unlikely event GoDaddy's Scotsdale AZ datacenter got nuked, how would the website I was working on locally in DW4 know which site to use (from my Site Manager...)? In other words, if I have two test servers in my DW4 Site Manager, how does the website I'm working on know which test server to use? It seems to me that in order to establish a MySQL connection in the database panel, I need to have the correct Test Server configured. But, if there's two how does it know which one to use? The reason I ask is because when I click the [+] button in the database panel it only asks for a SQL server. There is no option to select a site. If the SQL database connection depends on the Test Server, how would it know which one of my two test servers is acting on the database?
2.a. Why doesn't DW4 call the "Test Server" what it really is--an Application Server?! Had this distinction been evident in the "Category" column of the DW4 Site Manager, it would have saved me a 6-day trip to a new dimension of pissed off!
3. What happens to my website when I try to edit the files located on my remote site? I noticed when I attempt to load them (by double-clicking the file in my remote file panel) that a window pops up asking me if I really want to open a "dependent" file. Does this mean my site will not function properly when I'm editing the remote file? Or, does DW4 download a copy of it?