htaccess 重定向除 .htm 之外的所有内容,当它不在特定文件夹中时
htaccess redirect everything except .htm when it's not in a particular folder
目前我的 htaccess 文件中有以下规则。
所有文件都应重定向,除非它们具有 .htm 或 .html 扩展名
RewriteRule \.(htm|html)$ - [NC,L]
RewriteRule ^([A-Za-z0-9-+_./]+)/?$ index.php?page=&%{QUERY_STRING}
现在的问题是 tinyMce 也有带有 .htm 的文件,在这种情况下,应该进行重定向。
所以,我想防止对 .htm 文件进行重定向,除非 folderstructure/url 某处 中包含“tinyMCE”...
我该怎么做?
根据您显示的示例,您能否尝试以下操作。尝试在此处修复 OP 的尝试,请确保在测试您的 URL 之前清除浏览器缓存。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !tinyMCE [NC]
RewriteRule ^([A-Za-z0-9-+_./]+)/?$ index.php?page=&%{QUERY_STRING} [L]
第二个解决方案: 或者也尝试使用以下规则,请尝试仅将一组规则放在上面或这些规则一次。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((?!tinyMCE)[A-Za-z0-9-+_./]+)/?$ index.php?page=&%{QUERY_STRING} [L]
目前我的 htaccess 文件中有以下规则。 所有文件都应重定向,除非它们具有 .htm 或 .html 扩展名
RewriteRule \.(htm|html)$ - [NC,L]
RewriteRule ^([A-Za-z0-9-+_./]+)/?$ index.php?page=&%{QUERY_STRING}
现在的问题是 tinyMce 也有带有 .htm 的文件,在这种情况下,应该进行重定向。
所以,我想防止对 .htm 文件进行重定向,除非 folderstructure/url 某处 中包含“tinyMCE”... 我该怎么做?
根据您显示的示例,您能否尝试以下操作。尝试在此处修复 OP 的尝试,请确保在测试您的 URL 之前清除浏览器缓存。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !tinyMCE [NC]
RewriteRule ^([A-Za-z0-9-+_./]+)/?$ index.php?page=&%{QUERY_STRING} [L]
第二个解决方案: 或者也尝试使用以下规则,请尝试仅将一组规则放在上面或这些规则一次。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((?!tinyMCE)[A-Za-z0-9-+_./]+)/?$ index.php?page=&%{QUERY_STRING} [L]