2011-06-18 56 views
0

这是关于htaccess的第三个问题。我应该制作一张单曲。但我认为这将是一个太大的问题。Htaccess - 删除/ page /并添加“ - ”

这是用于我自己的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] 

而我想要做的是:

删除/页/从我的网址,例如只是有:myurl.com/home

现在我的网址是:www.myurl.com/page/home或其他任何标题。现在,当人们在CMS中创建新页面时,他们可能不会在页面中调用:关于我们。 这将连接起来的存在是什么:

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

如何添加 “ - ”,而不是20%?

回答

1

您可以轻松从的.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/。所以只需用-替换空格。

+0

嗯,看起来像 的RewriteCond%{REQUEST_FILENAME}!-f 的RewriteCond%{REQUEST_FILENAME}!-d 重写规则^([^/\。] +)/?$的index.php?页面= $ 1 [L] 什么都不做? 而我的链接是基于人们为他们的页面标题选择的内容。例如,在我的CMS中,如果他们喜欢关于我们的标题。我不想处理关于我们而是关于我们。 – skolind

+0

现在/ page /已从网址中删除,谢谢。
现在:我如何获得%20? – skolind

相关问题