2009-02-04 33 views
2

我有这个网址:如何在Apache mod中将字符从子域移动到文件名?

http://hostX.site.com/some_path_here/filename.jpg 

,并需要将其改写为:

http://host.site.com/same_path_here/filenameX.jpg 

能否请你告诉我,如果这是可能的吗? 基本上我试图将“X”(这是一个数字)从子域移动到文件名的末尾,就在扩展名之前。

谢谢。

回答

3

像这样的东西应该这样做:

RewriteCond %{HTTP_HOST} ^host(\d)\.example\.com$ 
RewriteRule (.*)\.([^/.]+)$ http://host.example.com/$1%1.$2 

但由于主机不同的是,这将导致外部重定向。

2

(未经测试)这样的事情应该工作:

RewriteCond %{HTTP_HOST} host(\d).site.com 
RewriteRule (.*)\.(.*) host.site.com/$1%1.$2 

你需要通过的RewriteCond提取主机号。在重写规则,你可以使用数字与%-modifier

HTH