Развертывание приложения CodeIgniter 1.7.2 на IIS 7 - PullRequest
1 голос
/ 22 января 2011

Я разработал Codeigniter 1.7.2 на Wamp, и он почти завершен. Сейчас я пытаюсь разместить его на IIS 7 (поскольку на панели управления, которая мне предлагается, только IIS), я получаю ошибки. Вот что я получаю:

Warning: require(system/codeigniter/Common.php) [function.require]: failed to open stream: No such file or directory in c:\abc\wwwroot\system\codeigniter\CodeIgniter.php on line 38

Warning: require(system/codeigniter/Common.php) [function.require]: failed to open stream: No such file or directory in c:\abc\wwwroot\system\codeigniter\CodeIgniter.php on line 38

Fatal error: require() [function.require]: Failed opening required 'system/codeigniter/Common.php' (include_path='C:\Program Files (x86)\PHP\pear;./;./includes;./pear') in c:\abc\wwwroot\system\codeigniter\CodeIgniter.php on line 38

Я совершенно сбит с толку, какую ошибку он дает и что мне делать, чтобы ее исправить.

Я уже искал в Интернете и обнаружил, что у него есть проблемы с htaccess. Это мой файл htaccess:

Options +FollowSymLinks
IndexIgnore */*

<ifmodule mod_rewrite.c>
RewriteEngine on

    # if a directory or a file exists, use it directly
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    # otherwise forward it to index.php
    RewriteRule ^(.*)$ index.php/$1 [L]

</ifmodule>

Я не знаю, как конвертировать и что писать в web.config. Я использую websitepanel для развертывания сайта.

1 Ответ

2 голосов
/ 22 января 2011

Может это оно? Вы должны найти код ниже в вашем index.php вашего webroot. Вопрос будет, вы указали полный путь к серверу? Убедитесь, что вы используете полный путь к серверу, а не только из webroot или из папки вашего домена в переменных * $ system_folder * и * $ application_folder * в файле index.php. Я надеюсь, что это поможет /

/*
|---------------------------------------------------------------
| SET THE SERVER PATH
|---------------------------------------------------------------
|
| Let's attempt to determine the full-server path to the "system"
| folder in order to reduce the possibility of path problems.
| Note: We only attempt this if the user hasn't specified a 
| full server path.
|
*/
if (strpos($system_folder, '/') === FALSE)
{
    if (function_exists('realpath') AND @realpath(dirname(__FILE__)) !== FALSE)
    {
        $system_folder = realpath(dirname(__FILE__)).'/'.$system_folder;
    }
}
else
{
    // Swap directory separators to Unix style for consistency
    $system_folder = str_replace("\\", "/", $system_folder); 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...