我有一个共享托管服务器,上面有大约 2000 个网站。
我有一个轻量级的 apache/event 前端,它负责处理静态内容,并将对动态内容的请求本地代理到重量级的 apache/prefork/mod_php 后端。
这是我目前正在使用的正则表达式
ProxyPassMatch .*\.(?i)(avi|bmp|css|flv|gho|gif|ico|iso|jpg|jpeg|js|mkv|mp4|pdf|png|rar|swf|tiff|txt|zip)$ !
ProxyPassReverse / http://%{HTTP_HOST}:8080/
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:8080/
不过我正在考虑切换到这个正则表达式
(\.php|\/|\.html|^[^.]+|\.htm)$
这将代理以下内容
1)anything.php
2)/ 或 /任何东西/
3)任何东西.html
4)任何东西
5)任何东西.htm
但不是以下
1)任何东西.PHP
2)任何东西.jpg
3)任何东西。任何东西
这正是我想要的。
您能否想出一个更有效的解决方案来代理任何应视为动态内容的内容?
答案1
我会将静态内容放在单独的目录中。这样,如果您想要添加一些不需要代理的新内容,您就不会被文件名所束缚。