Options for building Web Servers
Miscellaneous Forums/General Discussion/Options for building Web Servers
Hi all,
If we want to build a web server from scratch that could access database and is safe, what the cheapest way to do that? (Database access and Safety is the main concern)
1. Windows XP+Apache+PHP+MqSQL?
2. Windows Server+IIS+ASP.NET+SQLServer?
3. Or,other ways...
(Linux is temperarly not considered because it needs to learn a lot to start)
BTW, should we apply for a lease broadband line for this web server?
Thanks in advance.
Windows Server+IIS+ASP.NET+SQLServer+PHP+MSQL
IMHO Apache is nice, if you dn't need asp you can consider Apache.
To run a Web Server, a 10MB upload speed is recommended.
Use WAMP, or google WAMP, thats Windows , Apache, MySQL, PHP.
comes with one installer that sets up installs and has you running your own website in seconds. comes with phpmyadmin as well as some other cool things.
xampp is pretty good too (although you may want to check over the default config to make sure everything is as you want it (uncased databases, etc), not hard to change though.)
Thanks a lot.
@Yavin, Perturbatio:
1. It seems that there is no mysqladmin.exe in mysql\bin folder. How to create database with wamp?
2. Is Mysql = sqliteManager?
(When I create a database in sqLiteManger, I could not use it in MySql?)
3. Is separate installation of Apache, MySQL, PHP preferable to single wamp?
Thanks in advance
in response to number 3, no, since wamp and xampp have all three in one directory, configured and ready. It's not easy to configure apache, php and mysql if you're not used to it.
@Ashmantle: In that case, how do you create database in mysql?
Do you use mysqladmin or other ways?
(My main problem is that I could not create a database in MySql in wamp)
Thanks in advance.
> how do you create database in mysql?
The easiest way is to use the mysql admin tool and the mysql query browser. Documentation and tools are at.
www.mysql.org
(Linux is temperarly not considered because it needs to learn a lot to start)
Or you could just use SME Server - which is entirely free, and thus by far the cheapest solution.
If you must have a Windows solution, get Windows Sever 2003 + Tomcat + PostgresSQL + Hibernate.
BTW, should we apply for a lease broadband line for this web server?
If you're expecting traffic.
how do you create database in mysql?
There are good visual tools for this.
SQLYog is good if you like Enterprise Manager type interfaces (the community edition is free) and
PHPMyAdmin is pretty handy in general.
Thanks
What is the difference between wamp and xwamp?
Which one is better?
Thanks in advance.
I use XAMPP and love it - make sure you follow their instructions on making it "safe" though, stuff like plugging various developer routes before publishing it.
how do you create database in mysql?
I use phpmyadmin usually (just browse to localhost and click phpmyadmin).
What is the difference between wamp and xwamp?
I could be wrong, but I believe that xampp is a progression of wampp
Happy Sammy, start buy reading up on the subject first. That's always my first step. ;-)
You did not mention what this web server is supposed to do in the end, so that leaves a lot of room for different options.
The LAMP stack (Linux/Apache/MySQL/PHP, Perl, Python) is the de facto standard that most ISPs will sell you and most Open Source web applications will require this setup to run. Some MIGHT work on WAMP, many probably won't.
Windows & IIS will seduce you with their GUI administration and the illusion of simplicity that goes along with that. In fact, however, IIS is usually harder to handle than Apache and its configuration files.
If security REALLY matters, I'd drop the whole Windows thing anyway, unless it is hidden behind a very well designed Firewall solution and fitting network design. However, I don't think that this will be really important for you, so you could live with a Windows machine.
By the way, SQLite is a whole different story than MySQL. MySQL is a real database server while SQLite is an embedded database system. They are not compatible. MySQL is pretty easy to learn and not very difficult to administer (compared to Oracle, MS SQL or PostgreSQL). For web servers, it is a very good and broadly used choice. And despite the FUD that you will find on the Internet: MySQL --IS-- ACID compliant and supports transactions (when you use the InnoDB engine, for example). Oh, and MySQL is VERY well documented, too. ;-)
Anyway, you should provide more information about what that server is eventually going to do.
Thank you for you reply. :)
@Winni:I was asked to upgrade a lan win app. to web app. We want a secured web server to run the web app.
From google, some say that wamp(Apache+PHP+MqSQL) run well on Windows Xp professional and it's MUCH cheaper than using Asp.net for windows server and sql server. That's why I ask above questions about wamp or xwamp.
SQLite comes with wamp setup.exe and there is no mysqladmin.exe in this setup.exe. Some say that I need to install add-on.
Besides, I think I will re-write the web app. from scratch.
1. Do you think this combination is preferable to using Linux+Apache+PHP+MqSQL?
2. Which one is better: renting a server from ISP or storing data on private pc (so that I have complete control) with lease line?
Thanks in advance :)
Any more comments??
Thanks in advance.
I was asked to upgrade a lan win app. to web app
Then of course there's the JSP/AJAX / Java Application Server / JDBC route.
Everything can be done in Java. No Web (html/ajax) experience required, if you use the right tools, and know what you want. Products like Thinwire, JBoss, Tomcat might be good to look into, if you want to go down that road.
It all depends on what you want at the end of the day. For cross-platform interactive web-applications, AJAX can do a lot for you - see Googles examples of Spreadsheet / Documents / Maps. I believe that gmail is AJAX driven too.
Anyhoo... back to work :-p
Without talking about about traffic, backups, firewalls, how much downtime is acceptable, contingency etc it's impossible to suggest anything...
I'm assuming leasing a server from someone who's already plugged into the internet is not an option? Plenty of services for that, then you don't have to worry about anything.
Do you need a whole server?
Do you need it backed up every x hours?
Sorry, I've been busy looking for a new apartment -- my girl friend and I have now found a very nice place with a gorgeous view to the Rhine. ;-))))
Anyway, what's that Windows app written in and what database backend or embedded db engine does it use? I'd try not to change that when migrating to the web -- provided that the db design is good and robust (enough).
Since you are not going to rely on existing (open source) web apps, WAMP will do the job for you. However, there still is a licensing issue here: XP is only allowed to server 10 clients. So it won't do you any good as a server OS.
There is a Win 2003 Web Server edition available which is reduced to exactly that: A web server, that means IIS + ASP.NET. Personally, I think that .NET is "the one thing" that Microsoft did right, so that would be a good choice. However, PHP might be easier to use than ASP.NET. As for the database, MySQL has a great connector for .NET, so you could use it both in .NET and PHP. PHP does come with a built-in SQLite engine and the Mono project provides a SQLite ADO.NET layer that can be used in .NET. So I guess the same could be said for that db engine.
However, I personally prefer simple and straight forward solutions over bloated and academic approaches. .NET is more straight forward than Java, and xAMP definitely is more straight forward than .NET. People will now raise the "scalability" argument, but let's be honest here: You are not going to write an application for 10 million concurrent users and billions of transactions per hour, so we can as well cut that crap. ;-)
ISP: I would not trust an ISP to host business critical data, but that's just me and my paranoia. I like to stay in control and believe that my db server belongs behind my own firewall, so I'd get an own IP range and host my own server. However, there is also that option of leasing a web server with full remote control. If this is a dedicated machine, that's a valid option. Depends on your budget and level of confidence into other's services. Your suggestion of using a VPN tunnel between an ISP hosted web server and a locally hosted db server can also work, but it could become a performance bottle neck. The web server and the db server probably talk A LOT with each other. Most likely more than the web clients and the http server. You should measure that communication overhead before you chose the final system design.
Gotta go now, family business. ;-)
Just a word of warning about using Windows XP as a web server, it's limited to 10 concurrent connections. If this is going to be a problem for you I would use another OS.
You CAN download and install a 3rd party patch or rather a hack which puts the old TCP stack back onto XP prior to SP2 however this isn't the best way to run a webserver particularly if it's running anything important and of course there's no support.
If you really want Windows then use Windows 2003 R2 otherwise I would find yourself a nice simple Linux package with GUIs.
Darkheart
Thank you for your reply.
From wamp, it is said that wamp is not for production server, but development or testing server. For production server, a Linux server is recommented to use with apache+mysql+php.