php - 通过 .htaccess 使用 Godaddy 从 URL 中删除文件扩展名
问题描述
我正在尝试从 URL 中删除 php 扩展名,删除了 php,但是在执行代码时不会读取所有 php 代码/文件。下面是代码
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php
[NC]
RewriteRule ^ %1 [R,L,NC]
# remove index
RewriteRule (.*)index$ $1 [R=301]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*?)/?$ $1.php [NC,L]
解决方案
在 .htaccess 文件中添加以下代码
重写引擎开启
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*.php$ %{REQUEST_FILENAME}.php [QSA,L]
注意:在 Godaddy 服务器上,为了删除您需要启用 MultiViews 的扩展。下面是相同的代码
选项 + 多视图
重写引擎开启
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*.php$ %{REQUEST_FILENAME}.php [QSA,L]
推荐阅读
- vue.js - Computed Property 导致数组和对象突变
- python - 如何将 groupby 与多索引列一起使用
- r - R中使用汽车数据集的Cor函数
- java - 将字符串解析为 Sql 日期时间
- sql-server - 如何减少 BULK INSERT 中的内存使用量?
- python - 这种二进制排序算法是否需要在内存使用和执行速度方面进行显着优化
- php - 如何验证来自 HTTP 请求的 Google Cloud Task 令牌?
- java - Spring 中是否为每个 Bean 创建了代理?
- reactjs - 使用 React 钩子和 MQTT 处理对象列表
- c# - LINQ 查询以检查组合列表中是否存在单个组合