我的网站是用PHP编写的,在Windows 2003服务器上。最近我把它们移到了GoDaddy的Windows Hosting帐户。之前的开发人员在.htaccess中编写了URL-Rewrite规则,该规则不适用于新服务器。网站上的所有链接都显示了GoDaddy的404页面。
以下是现有htaccess文件的内容:
# Helicon ISAPI_Rewrite configuration file
# Version 3.1.0.64
# AddHandler x-httpd-php5-3 .php
RewriteEngine on
RewriteCond %{HTTPS} (on)?
RewriteCond %{HTTP:Host} ^www\.(.+)$ [NC]
RewriteCond %{REQUEST_URI} (.+)
RewriteRule .? http(?%1s)://%2%3 [R=301]
# RewriteRule ^(.*?\.asp)/([^/]*)/([^/]*)(/.+)? $1$4?$2=$3 [NC,LP,QSA]
# RewriteRule ^(.*?\.asp)/([^/]*)/([^/]*)(/.+)? $1$4?$2=$3 [NC,LP,QSA]
# RewriteRule ^(.*?)/(.*?)/([^/]*)/([^/]*)(/.+)? $2.asp$5?$3=$4 [NC,LP,QSA]
RewriteRule ^(?!.*(?:admin|blog|images|tinymce|dablog)/)(.*?)/(.*?)/([^/]*)/([^/]*)(/.+)? $2.php$7?mmid=$3&cmid=$4 [NC,LP,QSA]
答案 0 :(得分:0)
我想说的是,您很可能没有设置httpd.conf文件以允许通过Apache服务器重写引擎。 要更改此设置,请找到
所在的行LoadModule #rewrite_module modules/mod_rewrite.so
删除#
删除评论 LoadModule rewrite_module modules/mod_rewrite.so
这可能不是整个问题,有更多的可能性,希望就是这样。如果没有,您可能想尝试添加自定义错误文件或启用调试,然后联系GoDaddy,如果这些都不起作用。
答案 1 :(得分:0)
GoDaddy不支持ISAPI_Rewrite。此外,您应该检查什么是Windows服务器,如果它是2008或2012,那么您应该使用URL重写模块创建新的URL重写规则 - http://www.iis.net/learn/extensions/url-rewrite-module。这意味着您应该重新创建重写规则。