Drupal works on any web server with PHP support.
Apache is the most commonly used web server for Drupal. Drupal will work on Apache 2.x hosted on UNIX/Linux, OS X, or Windows.
The majority of Drupal development and deployment is done on Apache, so there is more community experience and testing performed on Apache than on other web servers. Drupal 7 and 6 will likely work on Apache 1.3.
You can use the Apache 'mod_rewrite' extension to allow for clean URLs.
The Apache Virtualhost configuration must contain the directive
AllowOverride All to allow Drupal's .htaccess file to be used.
Nginx is a commonly used web server that focuses on high concurrency, performance and low memory usage.
Drupal will work on Nginx legacy versions (0.7.x, 0.8.x, 1.0.x, 1.2.x), stable 1.4.x versions, and mainline 1.5.x versions hosted on UNIX/Linux, OS X, or Windows. Nginx is a popular alternative to Apache, so there is also significant community experience and testing performed on Nginx.
For information on enabling clean URLs, see Clean URLs with NGINX.