dongluobei9359 2015-04-08 18:40
浏览 47
已采纳

htaccess将带有查询字符串的域重定向到带有排除的子域

We have moved our site to a subdomain while on the main domain we have a new site with new url's. What we are trying to do is having the old url's redirect to the subdomain while the excluding the new url's.

here's examples of the old url's:

http://www.domain.co.il/index.php?dir=app_admin&page=ip_stat&op=list&pos=0

should be redirected to:

http://sub.domain.co.il/index.php?dir=app_admin&page=ip_stat&op=list&pos=0

While the new site url's (do not contain php) and the homepage should not be effected.

This is what our htaccess looks like:

It does redirect the url's to the sub, but does not exclude the new pages and redirect them to the subdomain home (sub.domain.com)

RewriteEngine on    
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]

RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$  http://www.%{HTTP_HOST}/$1 [R=301,L]   

RewriteCond %{REQUEST_URI} !contact(|$)
RewriteCond %{REQUEST_URI} !about(|$)
RewriteCond %{REQUEST_URI}  index\.php
RewriteRule ^(.*)$ http://sub.domain.com [R=301,L]

Hopefully someone can help us get this right, we get many 404 in our gwt now :/

Thanks for any help !

  • 写回答

3条回答 默认 最新

  • dsm1998 2015-04-08 19:14
    关注

    Fix some regex and reorder your rules:

    RewriteEngine on    
    RewriteBase /
    
    RewriteCond %{THE_REQUEST} !/(contact|about) [NC]
    RewriteCond %{THE_REQUEST} !\.(jpe?g|gif|bmp|png|tiff|css|js) [NC]
    RewriteRule ^(.+)$ http://sub.domain.com/$1 [R=301,L,NE]
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^ index.php [L]
    

    Also test this in a new browser to avoid old browser cache.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 有没有会写mysql的,有偿做个问题
  • ¥20 win11账户锁定时间设为0无法登录
  • ¥45 C#学生成绩管理系统
  • ¥15 VB.NET2022如何生成发布成exe文件
  • ¥30 matlab appdesigner私有函数嵌套整合
  • ¥15 给我一个openharmony跑通webrtc实现视频会议的简单demo项目,sdk为12
  • ¥15 vb6.0使用jmail接收smtp邮件并另存附件到D盘
  • ¥30 vb net 使用 sendMessage 如何输入鼠标坐标
  • ¥15 关于freesurfer使用freeview可视化的问题
  • ¥100 谁能在荣耀自带系统MagicOS版本下,隐藏手机桌面图标?