我的网站有一个名为“keywords”的文件夹,例如:http://www.mysite.com/keywords/
在文件夹中我只有一个index.php文件。无论有人在文件夹后输入什么内容,我都需要index.php来显示。例如,http://www.mysite.com/keywords/this-is-a-test应显示index.php文件的内容,但不更改URL。
我尝试的所有内容似乎都失败了 - 我正在使用my / keywords /文件夹中的.htaccess。无论我放在那里,我似乎都会遇到404错误。任何帮助将不胜感激,我确信这是一个小而简单的东西,我只是不知道该怎么做。
这就是我目前所拥有的:
RewriteEngine on
RewriteRule - index.php [L]
这个问题在于它只在使用短划线链接时才有效。
例如,
http://www.mysite.com/keywords/testing-this
确实有效。但这不起作用:
http://www.mysite.com/keywords/testingthis
任何帮助都将不胜感激。
答案 0 :(得分:0)
RewriteEngine On
RewriteBase / #make sure your website is located in root directory, if not you have to add directory here...
RewriteRule ^keywords/testingthis$ /keywords/index.php$1 [L]
答案 1 :(得分:0)
你可以试试这个:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !index\.php [NC]
RewriteCond %{REQUEST_URI} ^/keywords/.+ [NC]
RewriteRule .* keywords/index.php [L]
静默地映射:
http://www.mysite.com/keywords/anything
要:
http://www.mysite.com/keywords/index.php
由于OP未在问题中提及该要求,因此没有任何内容传递给index.php
。
假设字符串keywords
是固定的,而假设anything
是动态的。
anything
必须至少包含一个字符才能应用该规则。
对于永久性和可见的重定向,请将[L]
替换为[R=301,L]
。