我在网上看到了一些例子,这里有一些关于stackoverflow的答案。我还没有发现任何适合我需求的东西。首先让我说我对.htaccess的经验很少,我正在通过在线阅读教程和示例对它进行更多的研究。
希望有人可以解释我在这里做错了什么......我不希望文件发送重定向标头,而是用另一个URL掩盖它们不存在的URL。/ p>
示例:
我转到不存在的页面(例如404):
http://example.com/hello-everyone
我宁愿显示来自
的内容,而不是显示404http://example.com/?/hello-everyone
注意*我不想要重定向标题,因为我不希望人们必须看到?/前缀。
谢谢!
答案 0 :(得分:3)
你可以试试这个:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} /([^/]+)/?$ [NC]
RewriteRule .* index.php?key=%1 [L]
无声地映射
http://www.mywebsite.com/val
要
http://www.mywebsite.com/index.php?key=val
其中key
是任何固定的密钥名称,而“val”是传入URL中的变量值。
/val
必须是传入URL中的最后一个字符串才能使规则生效。
对于永久性和可见的重定向,请将[L]
替换为[R=301,L]
使用此类型的传入网址http://www.mywebsite.com/val
可能会让您以后停止使用此时使用的更难记住的网址http://www.mywebsite.com/?/val
。