Ошибка Coldfusion: не удается найти файл /CFIDE/administrator/index.cfm

Хорошо, я знаю, что вы можете погуглить этот вопрос и получить на него много ответов, но, похоже, ни один из них не работает для меня.

У меня есть совершенно новый сервер RHEL5 с последней установленной на нем LAMP, и я только что установил Coldfusion 9.

Когда я захожу на свой сайт, я получаю сообщение об ошибке Coldfusion:

File not found: /index.cfm

Если я перейду на страницу html или php, все в порядке, сервер работает правильно. И ошибка, которую я получаю, - это сине-серая ошибка coldfusion, поэтому сервер coldfusion работает.

И я сузил проблему до этого ...

/var/www/vhosts/site.co.uk/index.cfm - обслуживается

но корень моего сайта действительно

/var/www/vhosts/site.co.uk/httpdocs/index.cfm - coldfusion не видит этот файл!

я нашел это

/var/www/vhosts/site.co.uk/index.cfm

в журнале cfserver.log. Но я не могу найти нигде, которая ссылается на "/var/www/vhosts/site.co.uk/" как на корень.

jrun-web.xml имеет системный путь, установленный на /var/www/vhosts/site.co.uk/httpdocs, а внутри bin / coldfusion DOCROOT установлен на "/var/www/vhosts/site.co.uk/httpdocs"

Это раздел файла httpd.include:

# ATTENTION!
# DO NOT MODIFY THIS FILE OR ANY PART OF IT. THIS CAN RESULT IN IMPROPER PLESK
# FUNCTIONING OR FAILURE, CAUSE DAMAGE AND LOSS OF DATA. IF YOU REQUIRE CUSTOM
# MODIFICATIONS TO BE APPLIED TO THE CONFIGURATION, PLEASE, PERFORM THEM IN THE
# FOLLOWING FILE(S):
# /var/www/vhosts/site.co.uk/conf/vhost.conf
# /var/www/vhosts/site.co.uk/subdomains/<subdomain-name>/conf/vhost.conf

<VirtualHost 1.2.3.4:80>
    ServerName   site.co.uk:80
    ServerAlias  www.site.co.uk
    UseCanonicalName Off
    ServerAdmin  "[email protected]"
    DocumentRoot /var/www/vhosts/site.co.uk/httpdocs
    CustomLog  /var/www/vhosts/site.co.uk/statistics/logs/access_log plesklog
    ErrorLog  /var/www/vhosts/site.co.uk/statistics/logs/error_log
<IfModule mod_userdir.c>
    UserDir /var/www/vhosts/site.co.uk/web_users
</IfModule>
    Alias  /plesk-stat /var/www/vhosts/site.co.uk/statistics/
    <Location  /plesk-stat/>
        Options +Indexes
    </Location>
    <Location  /plesk-stat/logs/>
        Require valid-user
    </Location>
    Alias  /webstat /var/www/vhosts/site.co.uk/statistics/webstat
    Alias  /webstat-ssl /var/www/vhosts/site.co.uk/statistics/webstat-ssl
    Alias  /ftpstat /var/www/vhosts/site.co.uk/statistics/ftpstat
    Alias  /anon_ftpstat /var/www/vhosts/site.co.uk/statistics/anon_ftpstat
    Alias  /awstats-icon /var/www/html/awstats/icon
    <IfModule mod_ssl.c>
        SSLEngine off
    </IfModule>
    <Directory /var/www/vhosts/site.co.uk/httpdocs>
        <IfModule sapi_apache2.c>
            php_admin_flag engine on
            php_admin_flag safe_mode off
            php_admin_value open_basedir "/var/www/vhosts/site.co.uk/httpdocs:/tmp"
        </IfModule>
        <IfModule mod_php5.c>
            php_admin_flag engine on
            php_admin_flag safe_mode off
            php_admin_value open_basedir "/var/www/vhosts/site.co.uk/httpdocs:/tmp"
        </IfModule>
        Options -Includes -ExecCGI
    </Directory>
    <Directory /var/www/vhosts/site.co.uk/web_users>
        <IfModule sapi_apache2.c>
            php_admin_flag engine off
        </IfModule>
        <IfModule mod_php5.c>
            php_admin_flag engine off
        </IfModule>
    </Directory>
    <Directory "/var/www/vhosts/site.co.uk/httpdocs/CFIDE">
        AuthType Basic
        AuthName " "
        AuthUserFile /var/www/vhosts/site.co.uk/pd/d..httpdocs@CFIDE
        require  valid-user
    </Directory>
    ... 
    Omitting other directory tags 
    ...
    Include /var/www/vhosts/site.co.uk/conf/vhost.conf
</VirtualHost>

Что я делаю неправильно?


person Pete    schedule 02.12.2010    source источник
comment
не могли бы вы опубликовать полную запись VirtualServer для вашего сайта, пожалуйста. Измените имена, чтобы защитить невиновных, но ничего не добавляйте и не убирайте.   -  person Stephen Moretti    schedule 02.12.2010
comment
Вы имеете в виду раздел ‹VirtualHost› ‹/VirtualHost› файла httpd.include?   -  person Pete    schedule 02.12.2010
comment
Да, пожалуйста. Кроме того, какая версия ColdFusion Server у вас установлена? Стандартный или Корпоративный? Если предприятие, какую установку вы сделали? Стандартный или мультисерверный? Как вы подключили apache к ColdFusion? Когда вы делали установку, у вас просили контекстный рут? Если да, то что вы вошли? Извините за все вопросы.   -  person Stephen Moretti    schedule 02.12.2010
comment
Мы запускаем стандартную 30-дневную пробную версию CF9. Я запустил установочную корзину и выполнил пошаговые инструкции. Я дал установке пути /etc/init.d/httpd, и когда он попросил корневой каталог для размещения CFIDE, я дал ему /var/www/vhosts/site.co.uk/httpdocs. Кроме того, файл httpd.include состоит из 250 строк, так как в нем есть сотни тегов ‹Directory›, поэтому я опущу их, но я не вижу в них никакой помощи, если не ошибаюсь.   -  person Pete    schedule 02.12.2010
comment
@Comcar - вопрос, значит и PHP, и cfm находятся в одной папке?   -  person ajreal    schedule 02.12.2010
comment
Большинство наших страниц - это CFM, некоторые - PHP, и да, они сидят бок о бок в одной и той же структуре каталогов.   -  person Pete    schedule 02.12.2010
comment
Вы пытаетесь перейти на www.site.co.uk/index.cfm или www.site.co.uk/CFIDE/Administrator/index.cfm?   -  person Stephen Moretti    schedule 02.12.2010
comment
Что ж, я хочу, чтобы оба работали, но я еще не был на www.site.co.uk/CFIDE/Administrator/index.cfm, поэтому мне нужно сначала пойти туда, чтобы установить свои источники данных   -  person Pete    schedule 02.12.2010
comment
У вас есть JRunConfig Bootstrap 127.0.0.1:51000 где-нибудь в вашей конфигурации apache?   -  person Stephen Moretti    schedule 02.12.2010
comment
Существует ли физический путь /var/www/vhosts/site.co.uk/httpdocs/CFIDE и получаете ли вы запрос авторизации пользователя при попытке доступа к site.co.uk/CFIDE?   -  person Stephen Moretti    schedule 02.12.2010
comment
Я понятия не имею, где это искать: JRunConfig Bootstrap 127.0.0.1:51000 И да, этот каталог действительно существует, я могу попасть туда с помощью putty и просмотреть исходный код файла CFIDE / administrator / index.cfm, который у меня есть. htaccess в папке администратора, я должен ввести имя пользователя и пароль, которые хочет apache, а затем, пройдя через него, я получаю сообщение об ошибке Coldfusion file not found   -  person Pete    schedule 02.12.2010
comment
Настройки JRunConfig должны быть где-то в конфигурации httpd для apache. Вы пробовали получить доступ к администратору ColdFusion без ограничения пользователя? или вы пробовали localhost: 8300 / CFIDE / administrator?   -  person Stephen Moretti    schedule 03.12.2010
comment
В качестве предложения в будущем: на машине * nix не используйте установочный BLOB-объект LAMP. Установите Apache, PHP и MySQL отдельно. На самом деле это не так уж сложно. Кроме того, я всегда рекомендую устанавливать ColdFusion Server, независимо от версии, как автономный, не подключая его к вашему веб-серверу. Опять же, довольно легко вручную подключить apache к ColdFusion или использовать утилиту wsconfig, которая поможет вам подключиться, если вы уверены, что все работает правильно.   -  person Stephen Moretti    schedule 03.12.2010
comment
У меня есть эта строка в моем httpd.conf: JRunConfig Bootstrap 127.0.0.1:51800   -  person Pete    schedule 06.12.2010


Ответы (5)


Я исправил это, проблема заключалась в том, что переменная RUNTIME_USER была установлена ​​в разных местах на «никто».

Мне удалось решить проблему благодаря этой записи в блоге

http://nzflew.blogspot.com/2009/04/changing-user-of-coldfusion-on-linux.html

У пользователя «none» не было прав для просмотра файлов. Я тоже совершил ошибку, установив с именем пользователя по умолчанию «никто».

В любом случае спасибо за вашу помощь.

person Pete    schedule 06.12.2010
comment
о да. Это сделало бы ситуацию неловкой. Раньше меня это беспокоило, поэтому я всегда создаю пользователя coldfusion для запуска серверов. Вы должны отметить это как ответ. ;) - person Stephen Moretti; 08.12.2010
comment
Ах, я не понимал, что могу щелкнуть галочку, чтобы отметить ответ как ответ. Я просто предположил, что не могу ответить на свой вопрос. В любом случае спасибо всем за вашу помощь! - person Pete; 14.12.2010

У меня была такая же проблема в среде Windows CF8 / Apache2.2. Просто изменили службы apache и CF Application, чтобы они работали с одним и тем же пользовательским актом. Исправлено для меня!

person Chuck    schedule 17.12.2010
comment
Хорошая штука, звучит очень похоже на Windows-эквивалент - person Pete; 21.12.2010

В вашем файле apache vhosts.conf для записи VirtualHost рассматриваемого сайта вам понадобится что-то вроде этого:

<VirtualHost some.ip.address:80>
ServerName    www.yoursite.com
DocumentRoot  /var/www/vhosts/site.co.uk/httpdocs
...other stuff...
</VirtualHost>
person Ken Redler    schedule 02.12.2010
comment
Это уже есть. site.co.uk/index.html серверы в порядке site.co.uk/index.cfm не работает Apache работает нормально, это просто сервер Coldfusion, который не может видеть файлы - person Pete; 02.12.2010
comment
Можете ли вы опубликовать соответствующие части файла? - person Ken Redler; 02.12.2010
comment
Я добавил их в исходный пост - person Pete; 02.12.2010

Снова возвращаемся к началу. Вы сказали :

И я сузил проблему до этого ... /var/www/vhosts/site.co.uk/index.cfm - это обслуживается

но корень моего сайта действительно

/var/www/vhosts/site.co.uk/httpdocs/index.cfm - coldfusion не может видеть этот файл!

Это говорит о том, что что-то в вашей основной конфигурации или конфигурации vhost либо вмешивается в ваш путь к документу, либо ваша конфигурация vhost не запускается, и вы переходите к конфигурации сервера по умолчанию, которая указывает на /site.co.uk вместо / site .co.uk / httpdocs

Первое, возможно, является правилом перезаписи где-то. Последним может быть что угодно. Хотя я только что заметил, что у вас есть включение vhost.conf в основание вашего блока конфигурации VirtualHost.

Было бы предложено сократить вашу конфигурацию до абсолютного минимума, например. вернуться к обслуживанию только html-файлов без каких-либо перехватов для php, coldfusion и всего остального, что есть, и медленно вставлять небольшие элементы обратно, когда вы подтвердите, что vhost действительно подбирается правильно.

person Stephen Moretti    schedule 06.12.2010

Проблема заключается в простом добавлении псевдонима для каталога CFIDE и директивы DirectoryIndex:

Alias /CFIDE /{PATHTOTHEWEBROOT}/CFIDE

DirectoryIndex index.html index.php **index.cfm** 
person Edward J Beckett    schedule 16.03.2012
comment
Не могли бы вы подробнее рассказать о проблеме запуска Coldfusion в качестве пользователя? Если права пользователя ограничены, в чем проблема? - person Pete; 19.03.2012
comment
Ну, на самом деле это просто вопрос разрешений ... Debian Docs ... daemon: Некоторые непривилегированные демоны, которым нужно писать в файлы на диске, запускаются как daemon.daemon (например, portmap, atd, возможно, другие). Демоны, которым не нужно владеть какими-либо файлами, могут вместо этого работать как nobody.nogroup, а более сложные или заботящиеся о безопасности демоны запускаются как выделенные пользователи. Пользователь-демон также удобен для локально установленных демонов. - person Edward J Beckett; 04.06.2012
comment
Чтобы добавить к этому ... так же просто chgrp ~ / www никому, чтобы позволить ColdFusion работать на разновидностях VPS, таких как cPanel или Plesk ... Я запускаю CF на нескольких сайтах с разными учетными записями пользователей на cPanel, и он запускается хорошо сюда ... - person Edward J Beckett; 06.07.2012
comment
Я отредактировал свое первоначальное утверждение относительно учетной записи пользователя CF, поскольку оно не было точным для всех настроек Linux ... - person Edward J Beckett; 01.09.2012