.htaccess 如何使用参数重定向到 index.html 但参数值与文件夹名称相同
.htaccess How to redirect to index.html with params but the param value is same as a folder name
路由 url 就像 'my_website/:param'
但我的位置包含一个文件夹名称与参数相同。
所以当我用 http:///my_website/apple 浏览时。
浏览器将显示文件夹而不是将值 'apple' 传递给网络。
我应该如何设置.htaccess?谢谢
以下仅在不存在具有相同值的文件夹时才有效。
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) index.html [NC,L]
</ifModule>
根据您显示的示例,您能否尝试以下操作。请在测试您的网址之前清除您的浏览器缓存。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/?$ index.html [L]
或者,如果您只查找以 apple
开头的 link,请尝试以下操作。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^apple index.html [NC,L]
OP 尝试过的代码中的问题: RewriteRule ^(.*) index.html [NC,L]
将创建一个循环,因为没有提到条件,所以它会继续每个 uri 每次都为真。
路由 url 就像 'my_website/:param'
但我的位置包含一个文件夹名称与参数相同。 所以当我用 http:///my_website/apple 浏览时。 浏览器将显示文件夹而不是将值 'apple' 传递给网络。
我应该如何设置.htaccess?谢谢 以下仅在不存在具有相同值的文件夹时才有效。
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) index.html [NC,L]
</ifModule>
根据您显示的示例,您能否尝试以下操作。请在测试您的网址之前清除您的浏览器缓存。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/?$ index.html [L]
或者,如果您只查找以 apple
开头的 link,请尝试以下操作。
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^apple index.html [NC,L]
OP 尝试过的代码中的问题: RewriteRule ^(.*) index.html [NC,L]
将创建一个循环,因为没有提到条件,所以它会继续每个 uri 每次都为真。