删除.php扩展名后删除尾随/索引

时间:2017-02-10 05:24:19

标签: php apache .htaccess redirect mod-rewrite

在具有两个版本的网站上工作,每个版本对应一种语言(es,en) 在我的根目录中,我有西班牙语版本的所有php文件,在子文件夹/ english /上有英文版的所有php文件。

在创建.htaccess(新手总数)时,想要删除.php扩展名,以便URL显示得很好。有人挖了一遍,发现了这个:

#Solves Canonical Issue for Main Page
#---------------------------------------------------------
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteRule (.*) http://www.example.com/$1 [L,R=301]
#---------------------------------------------------------


#Hides .php extensions on pages url´s 
#---------------------------------------------------------
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*?)/?$ $1.php [NC,L]
#---------------------------------------------------------

哪个方面做得很好。事实证明,如果我点击该网站的西班牙语版本的主页按钮,我将重定向到www.example.com/index而不是www.example.com。如果我在网站的英文版本上,我会被重定向到www.example.com/english/index而不是www.example.com/english /.

我有点迷茫。我是否需要在/ english /目录中使用另一个.htaccess并将RewriteBase设置为/ english /然后添加与上面相同的代码?

0 个答案:

没有答案
相关问题