apache - httaccess 将 mydomain.com/knowledgebase.php 更改为 mydomain.com
问题描述
我检查了许多其他类似的问题,但我想不出一个可以正常工作的 .htaccess 规则。
我有一个包含知识库系统(knowledgebase.php)的服务器。我不想knowledgebase.php
在 URL 中显示这个,永远。
我想要的例子:
https://help.thecrypto.app应该显示相同的网址(现在它在您访问时显示https://help.thecrypto.app/knowledgebase.php )
https://help.thecrypto.app/knowledgebase.php?article=1应该显示 URL https://help.thecrypto.app/?article=1
我怎样才能做到这一点?
我尝试了很多选择,包括:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /knowledgebase.php?/$1 [L]
解决方案
您能否尝试以下,根据您显示的示例编写。请在测试 url 之前清除您的浏览器缓存。
RewriteEngine ON
RewriteCond %{REQUEST_URI} ^/?$
RewritewriteRule ^ knowledgebase.php [L]
RewriteCond %{REQUEST_URI} ^/(knowledgebase) [NC]
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/?article=1 [L]
推荐阅读
- python - 无法序列化只读字段
- firebase - 未看到非活动用户的 FCM 通知图像
- javascript - 如何设置在其他页面重新加载时将显示的默认屏幕?反应路由器
- angular - 如何通过 api 调用传递数据并获取特定详细信息
- python - 如何在硒中修复此错误/警告?
- node.js - 阅读我的回复时我得到未定义但 React.js 中有回复
- .net - 为什么 roslyn SyntaxGenerator 不生成 params 数组和可选参数?
- angular - 角度反应形式验证子控件中的所需状态
- micronaut - 使用 HttpClient 的 Micronaut 读取超时
- sql - oracle中的多行到单行转换