.htaccess子文件夹的好网址

时间:2012-07-19 11:42:50

标签: .htaccess url-rewriting

我的根文件夹中有1个子文件夹: /root/task6/index.php

我需要将网址www.andriussulcas.prinusprojects.lt/task6/index.php?p=naujienos&title=title更改为www.andriussulcas.prinusprojects.lt/task6/naujienos/title

我一直试图这样做一段时间,我所有的努力都没有成功。 在寻找答案时,我开始想到也许我的mod_rewrite没有被激活。但后来我发现了如何将我的网站根目录重定向到我的所有文件所在的子目录。所以mod_rewrite有效。

我在stackoverflow上找到了一些类似的答案,比如how to "rewrite rule" for a sub-sub-directory? .htaccess/php,但由于某些原因它对我不起作用。

这是我的.htaccess文件:

Options +FollowSymLinks
RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(www.)?andriussulcas.akademija.prinusprojects.lt$
RewriteCond %{REQUEST_URI} !^/task6/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /task6/$1
RewriteCond %{HTTP_HOST} ^(www.)?andriussulcas.akademija.prinusprojects.lt$ 
RewriteRule ^(/)?$ task6/index.php?p=naujienos [L]

RewriteRule ^naujienos/([A-Za-z0-9-]+)?$ index.php?p=naujienos&title=$1 [L]

.htaccess文件位于我的根目录,并且子目录中没有其他.htaccess文件。

非常感谢所有帮助。

1 个答案:

答案 0 :(得分:0)

尝试用以下内容替换上一条规则:

RewriteCond %{HTTP_HOST} ^(www.)?andriussulcas.akademija.prinusprojects.lt$ 
RewriteRule ^naujienos/([A-Za-z0-9-]+)$ /task6/index.php?p=naujienos&title=$1 [L]