Я пытаюсь использовать nclud Windex стилизовать мои списки каталогов apache для внутреннего проекта (безопасность не слишком важна)
Windex использует директивы HeaderName и ReadmeName, указывающие на файлы php, и все это работает, пока файлы php windex находятся в каталоге, из которого обслуживается VirtualHost.
Однако я хочу выполнить стандартную установку в / usr / share / windex по двум причинам. Во-первых, я не хочу, чтобы папка Windex появлялась в списках. Во-вторых, я хочу использовать его более чем на одном виртуальном хосте, а затем изменить его для всех.
Таким образом, файл .htaccess остается в моем каталоге / srv / www. В моем httpd.conf для виртуального хоста я указываю псевдоним:
Alias /windex/ "/usr/share/windex"
<Directory "/windex">
Options Indexes,FollowSymlinks
AllowOveride All
Order Allow,Deny
Allow from all
</Directory>
<Directory "/usr/share/windex">
Options Indexes,FollowSymlinks
AllowOveride All
Order Allow,Deny
Allow from all
</Directory>
Теперь это работает для файлов изображений и css в / windex / icons / * и / windex / css / *, все стили применяются правильно. Однако файлы php не обрабатываются. Однако если я перейду к файлу /windex/header.php, он будет правильно обработан PHP.
Спасибо, Джеймс
Привет, я нашел ответ. Я увеличил регистрацию ошибок в apache и обнаружил следующее:
Fri Jul 30 14:35:31 2010] [error] [client 160.50.3.128] PHP Warning: require_once(/srv/www/8081/windex/markdown.php): failed to open stream: No such file or directory in /usr/share/windex/config.php on line 84
[Fri Jul 30 14:35:31 2010] [error] [client 160.50.3.128] PHP Fatal error: require_once(): Failed opening required '/srv/www/8081/windex/markdown.php' (include_path='.:/usr/share/php:/usr/share/pear') in /usr/share/windex/config.php on line 84
Я обнаружил, что разработчик использовал следующие строки, чтобы включить уценку и возможности текстиля:
require_once( $_SERVER["DOCUMENT_ROOT"]. $windexPath . '/textile.php');
И аналогичная строка ниже для markdown.php - это заставляло PHP искать по пути '/srv/www/8081/windex/markdown.php', а не только в каталоге, где был config.php - я изменил строку кому:
require_once( 'textile.php');
А теперь все ок. Спасибо за попытку помочь.
Если вы не хотите, чтобы папка windex находилась в верхней части вашего сайта, вам необходимо изменить пути к файлам в config.php, все файлы CSS и любой файл .htaccess, полученный из main.htaccess.