【发布时间】:2017-04-05 20:38:35
【问题描述】:
在理解 .htaccess 文件并使其正常工作时遇到一些问题。 .htaccess 被识别....我在顶部输入了普通测试并得到了内部服务器错误。而且看起来 mod-rewrite 正在工作......因为我下载了一个测试 php 文件并且它工作正常。
我正在使用没有 php 页面的 Apache 2.4.23
但是我似乎无法让它正常工作。
我正在尝试获取此网址
http://example.com/ProjectTest/index.shtml?dynContent=Content1
然后像这样重写它
http://example.com/ProjectTest/Content1
我也尝试在整个网站上进行一般性操作,因为 ?dynContent=whatever 将是一个常量.....并尝试保持相同的路径.....就像下面的示例
改变这个
http://example.com/ProjectTest/ProjectFolder/index.shtml?dynContent=Content1
到这里
http://example.com/ProjectTest/ProjectFolder/Content1
我不太擅长 .htaccess 文件
更新: 好的......我让它工作......不太确定它为什么工作......但是当我输入 test-dev/ProjectTest/apples 或test-dev/ProjectTest/oranges 调用相应的内容。
这是我用的
RewriteRule ^ProjectTest/([^/\.]+)/?$ ProjectTest/index.shtml?dynContent=$1 [L]
然后我把它改写成这样,现在它适用于任何目录
RewriteRule ^(.*)/([^/\.]+)/?$ $1/index.shtml?dynContent=$2 [L]
【问题讨论】:
标签: apache .htaccess mod-rewrite url-rewriting