Mod rewrite 使用HTACCESS重命名PHP URL
我正在构建一个web应用程序,该应用程序将显示如下链接: 我希望它看起来像这样: 这在HTACCESS中是可能的吗Mod rewrite 使用HTACCESS重命名PHP URL,mod-rewrite,Mod Rewrite,我正在构建一个web应用程序,该应用程序将显示如下链接: 我希望它看起来像这样: 这在HTACCESS中是可能的吗 -B要进行URL重写,首先需要: 确保在服务器上启用了mod_rewrite 确保您具有向.htaccess文件添加规则的适当权限。 (AllowOverride必须设置为All或includeFileInfo) 然后在web根目录中创建以下.htaccess文件: RewriteEngine On RewriteRule ^([\-_0-9A-Za-z]+)$ inde
-B要进行URL重写,首先需要:
- 确保在服务器上启用了
mod_rewrite
- 确保您具有向
文件添加规则的适当权限。.htaccess
(
必须设置为AllowOverride
或includeAll
)FileInfo
.htaccess
文件:
RewriteEngine On
RewriteRule ^([\-_0-9A-Za-z]+)$ index.php?a=$1 [L]
您可以根据需要自定义重写规则
第一个参数是匹配请求URI
的正则表达式(相对于.htaccess
所在的文件夹)
第二个参数是您要将其重写为的参数,$n
是您的匹配组。要进行URL重写,您首先需要:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^([0-9a-zA-Z+]{1,7})$?a=$1 [L]
</IfModule>
- 确保在服务器上启用了
mod_rewrite
- 确保您具有向
.htaccess
文件添加规则的适当权限。
(AllowOverride
必须设置为All
或includeFileInfo
)
然后在web根目录中创建以下.htaccess
文件:
RewriteEngine On
RewriteRule ^([\-_0-9A-Za-z]+)$ index.php?a=$1 [L]
您可以根据需要自定义重写规则
第一个参数是匹配请求URI
的正则表达式(相对于.htaccess
所在的文件夹)
第二个参数是您要将其重写为的参数,$n
是您的匹配组。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^([0-9a-zA-Z+]{1,7})$?a=$1 [L]
</IfModule>
重新启动发动机
重写规则^([0-9a-zA-Z+]{1,7})$?a=$1[L]
重新启动发动机
重写规则^([0-9a-zA-Z+]{1,7})$?a=$1[L]
这必须是重复的..请看:和:谢谢你给我指明了正确的方向…我会记下这个问题-B@Brad鸟雀:我已经回答了。。。不妨看看我的答案,然后继续。这一定是重复的。看:和:谢谢你给我指明了正确的方向……我将把这个问题记下来-B@Brad鸟雀:我已经回答了。。。不妨看看我的答案,然后继续。需要有一个基本的修改指南。。。有链接吗?@Chacha102:这是官方的mod_rewrite
文档:@Andrew Moore:感谢您的快速回复。我现在正试图让它正常工作,由于某些原因,您显示的代码没有重写URL。这可能与实际不包含文本index.php的链接有关吗?@Brad Birdsall:确保在httpd.conf
中,Apache启用了mod_rewrite
,并且AllowOverride
设置为All
,或者至少为根文件夹设置了FileInfo
。不要问一个愚蠢的问题,但我如何验证?服务器有一个cPanel接口..我能在那里找到吗?需要有一个基本的mod_重写指南。。。有链接吗?@Chacha102:这是官方的mod_rewrite
文档:@Andrew Moore:感谢您的快速回复。我现在正试图让它正常工作,由于某些原因,您显示的代码没有重写URL。这可能与实际不包含文本index.php的链接有关吗?@Brad Birdsall:确保在httpd.conf
中,Apache启用了mod_rewrite
,并且AllowOverride
设置为All
,或者至少为根文件夹设置了FileInfo
。不要问一个愚蠢的问题,但我如何验证?服务器有一个cPanel接口..我能在那里找到吗?