У меня есть существующий субдомен, subdomain.mysite.com, который я использую с SSL. Я пытаюсь установить PHPasswordPusher на этот поддомен, но я не уверен, как это сделать с Apache.Настройка псевдонима и каталога внутри Apache VirtualHost
Я следил за инструкциями, как предусмотрено. Например, DocumentRoot для subdomain.mysite.com - /var/www/subdomain
, а два каталога pwpusher - в /var/www/ppush
. Я добавил код, как указано в инструкциях по установке, к соответствующему VirtualHost, и я отредактировал код, как указано, чтобы указать на правильные каталоги для всего. Однако я получаю 404, когда пытаюсь перейти в каталог Alias на субдомене. (Да, я перезапустил Apache.)
Как получить заданную конфигурацию Apache для работы в существующем VirtualHost? Ниже приведен полный код для VirtualHost, отредактированный для мест, указанных выше.
<VirtualHost *:80 *:443>
ServerName subdomain.mysite.com
ServerAdmin [email protected]
DocumentRoot /var/www/subdomain
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
SSLEngine on
SSLProtocol all -SSLv3
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
SSLCertificateFile /path/to/cert.crt
SSLCertificateKeyFile /path/to/key.key
SSLCertificateChainFile /path/to/cert2.pem
##### PHPasswordPusher #####
Alias /pwpusher/ /var/www/ppush/pwpusher_public/
<Directory /var/www/ppush/pwpusher_public/>
AllowOverride None
Order allow,deny
Allow from all
DirectoryIndex pw.php
</Directory>
<Directory /var/www/ppush/pwpusher_private/>
AllowOverride None
Order deny,allow
Deny from all
</Directory>
</VirtualHost>
Все с конфигурацией выглядит нормально, за исключением '*: 80' для' VirtualHost', который будет генерировать «плохой запрос» ошибки, но не было бы причина ошибки 404. Немного грубо, но вы можете попытаться понять, к какому каталогу Apache действительно обращаются, запустив 'strace -p $ (pgrep apache2 | xargs | sed's// -p/g ')' и откройте страницу. На одной из последних строк вы должны увидеть что-то вроде 'stat ("/var/www/dsd ", 0x7fff470d2400) = -1 ENOENT (Нет такого файла или каталога)' – VolenD
@ user3584460 Это потрясающая команда, спасибо! Похоже, что он полностью игнорирует 'Alias', хотя команда сообщает об этом:' [pid 1228] lstat ("/ var/www/subdomain/pwpusher", 0x7ffcc44c90f0) = -1 ENOENT (Нет такого файла или каталога) ' , Используя эту информацию, я нашел [этот вопрос] (https://stackoverflow.com/questions/13189261/apache2-alias-not-working-in-ubuntu); удалив конечную '/' исправленную мою проблему. Если вы хотите опубликовать это как ответ, я более чем счастлив дать вам кредит/щедрость. Спасибо! – vaindil