正则表达式 - apache .htaccess 网址 redirect 正则表示法
巴扎黑
巴扎黑 2017-06-28 09:27:47
0
1
995

我想将所有的手机流量都导向至原访问URL/amp上
例如:
当手机访问http://example.com 时导向至http://example.com/amp
当手机访问http://example.com/123 导向至http://example.com/123/amp

我需要透过apache伺服器做这项动作,所以我使用.htaccess做redirect
底下这段.htaccess的设定可以帮我做到把

RewriteEngine On
RewriteCond %{REQUEST_URI} !/amp$ [NC]
RewriteCond %{HTTP_USER_AGENT} (android|blackberry|googlebot\-mobile|iemobile|iphone|ipod|\#opera\ mobile|palmos|webos) [NC]
RewriteRule ^([a-zA-Z0-9-]+)([\/]*)$ http://7abbd517.ngrok.io//amp [L,R=302]

http://example.com/123 导向至http://example.com/123/amp
但是没办法帮我达成首页的redirect
也就是说
「X」 http ://example.com 无法至http://example.com/amp

请问该怎么改写才能达到我最初的目标呢?

巴扎黑
巴扎黑

全部回复(1)
伊谢尔伦

由于[a-zA-Z0-9-]后面的加号表示至少匹配1个元素,所以由于http://example.com无法匹配一个元素,+改成*即可,另外,[/]外面的中括号没必要写。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!