Htaccess - 删除 /page/ 并添加"-"



这是我关于htaccess的第三个问题。我本该做一首单曲的。但我觉得这个问题太大了。

这是用于我自己的CMS。:o)

我的htaccess是:

RewriteEngine on
RewriteRule ^page/([^/.]+)/?$ index.php?page=$1 [L]
Remove index.php
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /.*index.php HTTP/
RewriteRule ^(.*)index.php$ /$1 [R=301,L]

我想做的是:

从我的URL中删除/page/,只需例如:myurl.com/home

现在我的网址是:www.myurl.com/page/home或任何标题。现在,当人们在CMS中创建新页面时,他们可能不想要一个名为"关于我们"的页面。这将是什么:

www.myurl.com/page/about%20us

如何添加"-"而不是%20?

您可以很容易地从.htaccess中删除page/,但必须忽略现有的文件和目录:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/.]+)/?$ index.php?page=$1 [L]

您的第二个问题与.htaccess无关。您必须将页面About us链接为/about-us/,而不是/about%20us/%20表示一个空间),如果调用页面/about-us/index.php?page=about-us),则将其处理为/about%20us/。所以简单地用-替换空间。

最新更新