use*_*431 1 linux apache .htaccess mod-rewrite
我正在尝试使用htaccess删除文件扩展名,因此www.mysite.com/file.php变为www.mysite.com/file.
我在.htaccess文件中使用以下代码:
Options +FollowSymLinks
Options +Indexes
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^\.]+)$ $1.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.它落在哪里的子文件夹:www.mysite.com/subfolder/file.php 成为www.mysite.com/file.
我已经尝试.htaccess在子文件夹中上传另一个文件,但它仍然会这样做.感觉它应该非常简单,但我很挣扎......任何人都可以帮助我吗?谢谢!
编辑抱歉的人,应该说 - 该文件位于子文件夹中,如下所示:
www.mysite.com/folder/subfolder/file.php
.htaccess文件位于/folder,URL更改为以下格式:
www.mysite.com/subfolder/file
抱歉误导.
这是您需要隐藏.php扩展名的规则.这将进入DOCUMENT_ROOT目录中的.htaccess:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
# To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]
Run Code Online (Sandbox Code Playgroud)