.htaccess 隐藏和思考.PHP扩展
这是一个老问题,我在Stackoverflow中看到了很多答案,但这对我来说并不管用 我想在我的网站中隐藏php扩展,该网站位于godaddy。 为了便于跟踪,我将所有文件放在www.example.com/temp/website中 所有php文件都存储在上面链接中的“网站”文件夹中。我将.htaccess文件保存在同一个文件夹中 我尝试了下面的代码,但它不工作.htaccess 隐藏和思考.PHP扩展,.htaccess,.htaccess,这是一个老问题,我在Stackoverflow中看到了很多答案,但这对我来说并不管用 我想在我的网站中隐藏php扩展,该网站位于godaddy。 为了便于跟踪,我将所有文件放在www.example.com/temp/website中 所有php文件都存储在上面链接中的“网站”文件夹中。我将.htaccess文件保存在同一个文件夹中 我尝试了下面的代码,但它不工作 Options +FollowSymLinks -MultiViews RewriteEngine On RewriteCond
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) $1\.php [L]
检查文件是否不存在(或者图像和css文件以及…将被重定向) 然后重定向到您的文件夹并添加扩展名
RewriteRule (.*) /temp/website/$1\.php [L]
像这样的事情会让你走的。请注意,我没有对此进行测试,但它应该会给您一个想法:
RewriteEngine On
// rewrite requests without .php extension if the file exists
RewriteCond %{REQUEST_FILENAME} !\.php$
RewriteCond %{DOCUMENT_ROOT}/temp/website/%{REQUEST_FILENAME}\.php -f
RewriteRule (.*) /temp/website/$1.php [L]
// optional, as explained below:
RewriteCond %{DOCUMENT_ROOT}/temp/website/%{REQUEST_FILENAME} -f
RewriteRule (.*) /temp/website/$1 [L]
.php
RewriteRule (.*) /temp/website/$1\.php [L]
/temp/website
RewriteRule (.*) /temp/website/$1\.php [L]
你问什么还不清楚。请注意,重写规则永远不会使您发送的链接中的文件扩展名神奇地消失。重写规则仅对传入请求有效。因此,在这种情况下,它们使服务器能够处理请求,而无需扩展。除此之外,“不起作用”在任何时候、任何情况下都不会帮助任何人。这是什么意思?日志文件中有错误吗?是否考虑过.htaccess文件?没有重写被应用吗?是否发生了改写,但写错了?宇宙内爆了吗?亲爱的,没有生成错误,但当我进入www.example.com/temp/website/index.php时,它工作了,但当我进入www.example.com/temp/website时,它不工作了。我希望当我把www.example.com/temp/website