我在这里发布了一个问题,我得到了答案,但现在我发现了代码中的一个问题。
原问题:
RewriteRule ^([^-]+)-([^-]+)-(?!in)([^/]+)-([^-]{2})\.html$ /$1-$2-in-$3-$4.html [R=301,L]
RewriteRule ^([^-]+)-([^-]+)-(?!in)([^/]+)\.html$ /$1-$2-in-$3.html [R=301,L]虽然上面修复了URL的所有问题,但我注意到我的正常URL有问题。例如,domain.com/careers-jobs-music-delege.html变成了domain.com/careers-jobs- in -music-delege.html- 'in‘正在被添加到其他URL中,这些URL的URL中没有'music-classes’。有什么方法可以防止这种情况发生吗?
谢谢!
发布于 2015-06-01 06:17:39
您可以这样尝试规则,这样实际的URL就不会受到影响。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^-]+)-([^-]+)-(?!in)([^/]+)-([^-]{2})\.html$ /$1-$2-in-$3-$4.html [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^-]+)-([^-]+)-(?!in)([^/]+)\.html$ /$1-$2-in-$3.html [R=301,L]https://stackoverflow.com/questions/30562914
复制相似问题