htaccess在一台服务器上运行良好,在另一台服务器上将导致重定向循环


htaccess working fine on one server and causing redirect loop on other

我有htaccess文件(下面的代码),在域名更改的两台服务器上使用相同的文件。它在一个上运行良好,但在另一个上出现重定向循环问题。唯一的区别是,在一台服务器上我使用域名,而在另一台上我使用专用IP地址

代码:

工作代码::

RewriteEngine on
# Use PHP5 Single php.ini as default
AddHandler application/x-httpd-php5s .php
# For security reasons, Option followsymlinks cannot be overridden.
#Options +FollowSymLinks
Options +SymLinksIfOwnerMatch
##below 7 lines used in live server 
RewriteBase /
RewriteCond %{HTTP_HOST} ^example'.com
RewriteRule ^(.*)$ http://www.example.com/$1 [R=permanent,L]
RewriteRule ^admin/$ admin/index.php
RewriteRule ^$ home/ [R]
RewriteRule ^home/$ page/index.php [L]
RewriteRule ^blog/$ blog/index.php [L]
RewriteRule ^forms/$ site-forms/index.php [L]
RewriteRule ^media/xmlfeeds/$ page/index.php
RewriteRule ^([a-z]+)('/?)$ page/index.php [NC,QSA,L]

不工作代码::

RewriteEngine on
# Use PHP5 Single php.ini as default
AddHandler application/x-httpd-php5s .php
# For security reasons, Option followsymlinks cannot be overridden.
#Options +FollowSymLinks
Options +SymLinksIfOwnerMatch
##below 7 lines used in live server 
RewriteBase /
RewriteCond %{HTTP_HOST} ^108'.175'.155'.54
RewriteRule ^(.*)$ http://108.175.155.54/$1 [R=permanent,L]
RewriteRule ^admin/$ admin/index.php
RewriteRule ^$ home/ [R]
RewriteRule ^home/$ page/index.php [L]
RewriteRule ^blog/$ blog/index.php [L]
RewriteRule ^forms/$ site-forms/index.php [L]
RewriteRule ^media/xmlfeeds/$ page/index.php
RewriteRule ^([a-z]+)('/?)$ page/index.php [NC,QSA,L]

谢谢。

循环由以下两行引起:

RewriteCond %{HTTP_HOST} ^108'.175'.155'.54
RewriteRule ^(.*)$ http://108.175.155.54/$1 [R=permanent,L]

它们说,"如果主机是108.175.155.54,则重定向到108.175.15.54。"

请在实时服务器上评论这些行。当您有域名时,您可以取消对它们的注释,转而使用域。