.htaccess - 正则表达式中的可选文本
问题描述
我正在尝试编写一个匹配带有和不带有 html 的 url 的正则表达式,Itried 这种方式但 ots 不起作用
RedirectMatch 301 ^/my_url(\.html)$ /es/promo/my_url.html
它应该工作myurl
,my_url.html
但它没有
解决方案
您可以在您的站点根目录 .htaccess 中尝试这些规则:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/es/promo/ [NC]
RewriteRule ^(.*?)(?:\.html?|/?)$ /es/promo/$1.html [L,NC,R=301]
推荐阅读
- c# - C# HttpClient 多个获取请求同时给出 System.Net.Sockets.SocketException (10060) 异常
- c# - iOS 应用程序想要加载 Mono.Andoid
- r - R:官员;尝试在 pptx 中更改正文字体大小时出错
- android - 一个活动中同方向的两个 DrawerLayout
- reactjs - 简单的 React 组件在路由后不渲染
- python - Seaborn中的Facetgrid在图例中自定义颜色
- apache-spark - 使用 joinWith 在 Apache Spark 中加入多个数据集
- bash - Bash 平等没有像我预期的那样表现
- java - 使用 Spring Boot 进行 LinkedIn 身份验证
- linux - 如何获取函数的输出以用作另一个函数的输入并遍历输出的每一行