【发布时间】:2017-09-03 04:39:18
【问题描述】:
我们在 godaddy 有两个托管包。我们的实时网站使用以下 .htaccess 文件运行良好。无需在 url 中使用 index.php 即可访问网站。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
我们在同样由 godaddy 提供的其他主机上使用了相同的 htaccess 文件和相同的代码。我们只是想让生产和开发实例分开。但是在其他具有相同代码和 htaccess 文件的主机上,网站显示 404 page not found 错误,但网站在 url 中使用 index.php 可以正常工作。
我们在两台服务器上都有相同的 php 版本。只是想知道可能是什么问题?
【问题讨论】:
-
服务器上的操作系统是什么?是专用服务器吗?你用的是什么网络服务器?
-
.htaccess看起来不错。当不遵循 CI 控制器(和模型)的文件命名约定时,通常会发生 404。 CI 版本 => 3 尤其严重。如果您的开发机器是 WAMP(窗口上)堆栈并且您在实时服务器上有 apache,您可能会被愚弄。他们以不同的方式处理字符大小写。还要确保在 config.php 中正确设置了 base_url -
如果你对 url
example.com/index.php/your_contoller使用这个结构会发生什么?如果找到该页面,则问题是.htacccess。否则,可能就是我在上一条评论中提到的。 -
你使用的是linux托管服务器还是windows?
-
两台服务器都是基于 linux 的。一个工作正常,但另一个工作不正常。我可以使用 url 中的 index.php 访问网站,但无法访问。我使用了相同的 htaccess 文件,除了 config.php 文件之外,一切都相同
标签: php .htaccess codeigniter