Apache 从主页url中删除index.php

Apache 从主页url中删除index.php,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,如何从主页URL中删除index.php example.com/index.php 到 及 到 我读了很多关于stackoverflow的帖子,当我使用这些代码时,如果我转到一个无效的URL(比如-example.com/ahjgbhjkllghfd),那么它将不会显示404响应。它在无效URL上显示响应200和主页内容 {很抱歉英语不好:)}你可以试试下面的内容吗,已经在手机上写了,无法测试,我相信应该可以 重新编写引擎打开 重写规则^(.**)索引\.php/?$/$1[R=301,NC

如何从主页URL中删除index.php

example.com/index.php

我读了很多关于stackoverflow的帖子,当我使用这些代码时,如果我转到一个无效的URL(比如-example.com/ahjgbhjkllghfd),那么它将不会显示404响应。它在无效URL上显示响应200和主页内容


{很抱歉英语不好:)}

你可以试试下面的内容吗,已经在手机上写了,无法测试,我相信应该可以

重新编写引擎打开
重写规则^(.**)索引\.php/?$/$1[R=301,NC,L]

如果需要404错误响应,请尝试添加行

当访问
/ahjgbhjklghfd
时,它将显示
/error.php
文件

所有这些可能都是这样

RewriteEngine on
RewriteRule ^(.*?)index\.php$ /$1 [R=301,NC]

ErrorDocument 404 /error.php

您可以删除
RewriteCond
,因为不会有名为
index.php
的目录。请在我的答案评论部分告诉我这是否对您有帮助?
example.com/directory/index.php
example.com/directory
ErrorDocument 404 /error.php
RewriteEngine on
RewriteRule ^(.*?)index\.php$ /$1 [R=301,NC]

ErrorDocument 404 /error.php