[英]htaccess redirect infinite redirect
我有一個htaccess RewriteRule,將url auth/register.php
顯示為/register
如下所示:
RewriteCond %{REQUEST_URI} register
RewriteRule ^register/?$ /auth/register.php [NC,L]
但是,現在當有人手動在瀏覽器窗口中輸入auth/register.php
,我需要確保他們看到的是/register
。 我在用
Redirect /auth/register.php /register
但這顯然會造成無限重定向循環。 關於如何實現此目標的任何想法,以便任何嘗試進入/auth/register.php
嘗試都進入/register
但仍顯示auth/register.php
的內容而不會永久重定向? 謝謝!
您需要編寫一個別名。
在這里,RewriteRule將始終將您重定向到新的URL。 因此,使用它可以將您重定向到/auth/register.php
。 您還編寫了一個重定向規則,該規則將重定向到/register
。 因此,這是這兩個重定向的無限循環。
應該寫的代碼是
Alias /register /auth/register.php
不應將其寫入.htaccess文件中。 它應該寫在您網站的虛擬主機文件中
看起來與此相似
<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文件中, 僅包括此行
Redirect /auth/register.php /register
不包括
RewriteCond %{REQUEST_URI} register
RewriteRule ^register/?$ /auth/register.php [NC,L]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.