从子域删除index.php

时间:2015-11-07 02:47:28

标签: .htaccess mod-rewrite url-rewriting friendly-url

我的子域名中有以下.htaccess文件。 我的网站有http://hello/forum/index.php,并希望隐藏此index.php文件,并将其设为http://hello/forum

每当我使用附加的.htaccess时,它会指向http://hello,而不是http://hello/forum。我错过了什么吗?

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
    RewriteCond %{REQUEST_URI} !/system/.* [NC]
    RewriteRule (.*?)index\.php/*(.*) forum/$1$2 [R=301,NE,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ forum/index.php/$1 [L]
</IfModule>

2 个答案:

答案 0 :(得分:1)

请尝试以下规则:

RewriteCond %{THE_REQUEST} ^GET\ /(forum)/index\.php [NC]
RewriteRule ^ /%1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /forum/index.php/$1 [L]

答案 1 :(得分:0)

我能够通过添加

来解决这个问题
DirectoryIndex index.php index.html

在.htaccess文件中。