我在Xampp Apache中启用了mod_rewrite。运行phpinfo()
页面时,在“已加载的模块”下看到了mod_rewrite。因此,我认为它已启用。
然后我在htdocs下创建一个文件夹clean-url。在clean-url文件夹中,我有3个文件
1我在这里放置index.php
<A href="test">Welcome</a>
2)测试。 php
3).htaccess
我放在这里
RewriteEngine On
RewriteRule ^([a-z]+)/([a-z\-]+)$ /$1/$2.php [L]
我想运行索引页面,然后单击该超级链接,我要显示带有URL的test.php页面
mydomain/clean-url/test
我知道我走错了路。我究竟做错了什么?另外,我对URL重写和.htaccess一无所知。
我认为您不应该使用/$1/$2.php,仅使用/$2.php
因为您要求重写访问文件夹clean-url并打开该文件夹中的test.php。
尝试
^(.*)/(.*)$ /$1.php [L]
并查看其工作原理……然后您应使用更复杂的正则表达式进行格式化。
clean-url
中有破折号,但您的正则表达式无法识别。
将.htaccess
更改为
RewriteEngine On
RewriteRule ^([a-z-]+)/([a-z-]+)$ /$1/$2.php [L]
并将其放置在htdocs/
中,而不是htdocs/clean-url/
中。