dongwu5318 2013-08-26 18:44
浏览 104
已采纳

Htaccess 301重定向动态网址

I need to redirect my dynamic URLs with parameters to subfolder URLs. The source URL can vary in length/levels.

An example would be:

Source:

http://www.example.com/dir/?lang=en

Desired:

http://www.example.com/dir/en

and another would be:

Source:

http://www.example.com/dir/subdir/?lang=en

Desired:

http://www.example.com/dir/subdir/en

I'm using WordPress, so there is some existing code in my .htaccess, which the redirect in question, needs to work with. My existing .htaccess looks like this:

RewriteEngine On
RewriteBase /

RewriteRule ^index\.php$ - [L]

RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] 
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

I tried searching the entire web, however, no solution/answer seems to fit this particular case. Any experts who can help?

  • 写回答

1条回答 默认 最新

  • duandao2306 2013-08-26 19:17
    关注

    Enable mod_rewrite and .htaccess through httpd.conf and then put this code in your .htaccess under DOCUMENT_ROOT directory:

    Options +FollowSymLinks -MultiViews
    # Turn mod_rewrite on
    RewriteEngine On
    RewriteBase /
    
    RewriteCond %{QUERY_STRING} !^lang=.+ [NC]
    RewriteRule ^(.+?)/([^/]+)/?$ $1/?lang=$2 [L,QSA]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示