【发布时间】:2017-02-12 14:52:29
【问题描述】:
我有一个名为 www.example.com/print?id=adder 的 URL
我希望它看起来像 www.example.com/print/adder
我正在使用以下 .htacces 代码
RewriteEngine on
# redirect all requests except only POST
RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{THE_REQUEST} \s/+(.*?/)?(?:index)?(.*?)\.(?:php?)[\s?/] [NC]
RewriteRule ^ /%1%2 [R=302,L,NE]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]
RewriteRule ^print/([a-z]+) print.php?id=$1 [NC,L]
但是,我仍然拥有像 www.example.com/print?id=adder 这样的 URL。
我正在使用wamp 3.0.6(Latest Version)、PHP 7.0,10 和Apache 2.4.23。为什么我会面临这个问题。为什么代码不起作用?
【问题讨论】:
-
您的 htaccess 在 /print 文件夹中吗?
-
不,我的 .htaccess 位于根文件夹中,并且 print 不是其
print.php的文件夹。我已隐藏 .php 扩展名,因此您看到的是print?id=而不是print.php?id= -
“但是,我仍然有类似...的 URL” - 您还需要更改应用程序中的 URL(这实际上是 更改 URL) -想必你已经这样做了?
标签: php .htaccess clean-urls