Godaddy收到错误404(.htaccess或web.config)

时间:2013-09-26 05:49:33

标签: php apache .htaccess codeigniter mod-rewrite

美好的一天。

我建立了一个网站,这里是链接:

http://xactosdatosinc.com/ci/codeigniter

在我的本地PC中,我设置了一个.htaccess文件,以便有一个干净的URL正常工作。当我在Godaddy上传时,我可以查看登录页面。但是当我尝试登录时,它说错误404.

我搜索了很多.htaccess的变种,但根本没有成功。实际上,这是我的:

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)`
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]

有一次,我意识到在我的本地PC上,我使用的是Apache服务器,这就是为什么.htaccess正在工作。在Godaddy,我相信,.htaccess不被承认。它是在{ISS网络服务器中使用的web.config

我现在的问题是如何将此.htaccess翻译为web.config我希望在Godaddy托管中有效?

非常感谢...

1 个答案:

答案 0 :(得分:1)

google上的第一个结果:http://www.iis.net/learn/application-frameworks/install-and-configure-php-applications-on-iis/translate-htaccess-content-to-iis-webconfig

<rewrite>
  <rules>
    <rule name="htaccess codeigniter rule" stopProcessing="true">
      <match url="^(.*)$" ignoreCase="false" />
      <conditions>
        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
        <add input="{URL}" pattern="^/index.php" ignoreCase="false" negate="true" />
        <add input="{URL}" pattern="^/resources" ignoreCase="false" negate="true" />
        <add input="{URL}" pattern="^/robots.txt" ignoreCase="false" negate="true" />
      </conditions>
      <action type="Rewrite" url="index.php?/{R:1}" appendQueryString="true" />
    </rule>
  </rules>
</rewrite>