【发布时间】:2016-06-20 13:10:14
【问题描述】:
这是我的问题。 只有当文件不存在时,我才知道如何重写 URL。 但是我遇到了一个以前从未遇到过的问题。
给定网址:http://www.my-host.com/agences/my-agencies
在目录根目录下有 2 个文件:
- agences.php
- .htaccess
在 .htaccess 中:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^agences/(.*) /agences.php?agence=$1
这不会重定向到 /agences.php,甚至不会被解释。 如果我将 RewriteRule 更改为:
RewriteRule ^agences/(.*) $1
它甚至不处理重写规则。 所以即使我像这样在正则表达式条件前加上斜线:
RewriteRule ^/agences/(.*) $1
我在 apache 2.4.10 上运行,AllowOverride 全部在 vhost 中配置。
感谢您的帮助。
【问题讨论】:
-
您在请求 /agences/ 时是否收到 404 错误?
-
是的,如果我点击
http://www.my-host.com/agences/,我会收到 404 错误
标签: apache .htaccess mod-rewrite url-rewriting