试图删除.php文件扩展名

用户名

我刚刚在ubuntu apache服务器上安装了mod_rewrite并启用了.htaccess。但是,当我编辑.htaccess从文件中删除.php文件扩展名时,URL不会更改。

现在,我的.htaccess文件如下所示:

Options -Indexes

ErrorDocument 400 /blabla.php
ErrorDocument 401 /blabla.php
ErrorDocument 403 /blabla.php
ErrorDocument 404 /blabla.php
ErrorDocument 500 /blabla.php

不多,只是确保ppl无法查看我的文件树并添加了一些自定义错误页面。

但是,如果我在自己的网站上输入页面,例如href =“ page.php”,则一切正常,但是,如果我从网址栏中删除了“ .php”,然后将该页面重新加载为“ www.mysite.com/page”,而没有添加。 php它仍然可以工作。而且我还没有在.htaccess文件中做任何事情,对吗?

如果我现在将以下行添加到.htaccess中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

然后访问href =“ page.php”,该URL仍显示为“ www.mysite.com/page.php”,而不是“ www.mysite.com/page”

我还需要将href从href =“ page.php”更改为href =“ page”吗?为了使.php扩展名消失。-因为即使我不首先编辑.htaccess文件,该命令也可以正常工作。

而且,在编辑.htaccess文件时,请务必确保重新启动apache。

预先感谢,K

阿努巴瓦

您在这里问了很多问题。让我回答第一个:

www.mysite.com/page由于的缘故,没有任何重写规则即可工作Options MultiViewsOptionMultiViewsApache's content negotiation module运行前的选项使用mod_rewrite,并使Apache服务器匹配文件扩展名。因此/file可以在URL中,但可以使用/file.php

如果将此行放在根.htaccess的顶部:

Options -MultiViews

然后www.mysite.com/page将发出404。

另外,要自动.php从URL中删除,请在根.htaccess中使用以下代码:

Options -MultiViews
RewriteEngine On

# To externally redirect /dir/file.php to /dir/file
RewriteCond %{THE_REQUEST} \s/+(?:index)?(.*?)\.php[\s?] [NC]
RewriteRule ^ /%1 [R=301,L,NE]

# To internally forward /dir/file to /dir/file.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC]
RewriteRule ^(.+?)/?$ /$1.php [L]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

试图删除.php文件扩展名

来自分类Dev

删除PHP文件类型扩展名

来自分类Dev

从php中的文件目录中删除文件扩展名

来自分类Dev

从我的Php文件中删除文件扩展名

来自分类Dev

如何删除单个文件的.php文件扩展名?(.htaccess)

来自分类Dev

从网址中删除PHP文件扩展名

来自分类Dev

htaccess重写规则并删除php文件扩展名

来自分类Dev

htaccess在多个系统文件扩展名上删除.php

来自分类Dev

从网址中删除php文件扩展名

来自分类Dev

从htdocs中的文件中删除.php扩展名

来自分类Dev

从 URL 中删除文件扩展名,例如 .php 或 .html

来自分类Dev

删除文件扩展名的正确方法

来自分类Dev

.htaccess删除单个文件的扩展名

来自分类Dev

Groovy删除文件扩展名的方法?

来自分类Dev

.htaccess删除单个文件的扩展名

来自分类Dev

循环删除文件的扩展名

来自分类Dev

从 URL 中删除文件扩展名

来自分类Dev

htaccess重写并删除.php扩展名

来自分类Dev

从网址中删除php扩展名

来自分类Dev

用htaccess删除.php扩展名

来自分类Dev

htaccess不会删除php扩展名

来自分类Dev

网址扩展名用php删除

来自分类Dev

从包含破折号的文件名中删除.php扩展名

来自分类Dev

Oxwall htaccess删除松散的php文件上的扩展名,并忽略index.php重写

来自分类Dev

从带有 .php/id 的文件中删除 .php 扩展名

来自分类Dev

从URL删除文件扩展名和文件名

来自分类Dev

从具有多个扩展名的文件名中删除某些扩展名

来自分类Dev

删除php文件扩展名以及目录格式的_GET参数

来自分类Dev

如何从$ _SERVER ['PHP_SELF']中删除文件扩展名;