While content-aware distribution policies are getting more popular in cluster-based web systems, they make the dispatching node a bottleneck. To address the scalability and fault-tolerance problem, issues about designing distributed dispatching policies are discussed. For the policies aiming at improving the cache hit rate, a distributed dispatching policy named DWARD (distributed workload-aware request distribution) that takes into account both the load balance and the locality enhancement is presented. Finally, a testbed is implemented on the basis of a Linux kernel to benchmark various dispatching algorithms. The performance results show that DWARD can achieve a favorable throughput compared with the state-of-the-art dispatching policies.