首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >htaccess重定向无限重定向

htaccess重定向无限重定向
EN

Stack Overflow用户
提问于 2017-09-29 06:07:14
回答 1查看 80关注 0票数 1

我有一个htaccess RewriteRule,它将url auth/register.php显示为/register,如下所示:

代码语言:javascript
复制
RewriteCond %{REQUEST_URI} register
RewriteRule ^register/?$ /auth/register.php [NC,L]

但是,现在当有人在浏览器窗口中手动键入auth/register.php时,我需要确保他们看到的是/register。我用的是

代码语言:javascript
复制
Redirect /auth/register.php /register

但很明显,这会造成无限的重定向循环。有什么想法让我可以让任何尝试去/auth/register.php的人转到/register,但它仍然显示auth/register.php的内容,而不会永远重定向?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2017-09-29 18:26:49

你需要写一个别名。

在这里,RewriteRule会始终将你重定向到新的url。所以使用它就是让你重定向到/auth/register.php。此外,您还编写了一个重定向规则,该规则将重定向到/register。这是这两个重定向的无限循环。

应该编写的代码是

代码语言:javascript
复制
Alias /register /auth/register.php 

这不应该写在.htaccess文件中。应在您网站的虚拟主机文件中写入

它看起来像这样

代码语言:javascript
复制
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    Alias /register /auth/register.php //Add this line only donot disturb any other lines


</VirtualHost>

在.htaccess文件中,仅包含此行

代码语言:javascript
复制
Redirect /auth/register.php /register

不包含

代码语言:javascript
复制
RewriteCond %{REQUEST_URI} register
RewriteRule ^register/?$ /auth/register.php [NC,L]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46479003

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档