When a web browser requests a web page there are two places programming languages can be processed in order to produce the page: on the web server that hosts the website, or by the browser. All major browsers are capable of processing client-side languages such as HTML, CSS, and JavaScript. However, other languages, notably PHP, Ruby on Rails, Python, and even JavaScript in certain cases, are processed by the web server, and the results of that process sent to the browser to form the web page.