Итак, я попробовал форматировать https по всему сайту, поставив перенаправление в virtualhost, и теперь apache не запустится. Вот файл VirtualHost:Apache не запускается после смены виртуального хоста
Listen 80 443
<VirtualHost *:80>
Redirect permanent/https://www.tedspikes.com/
</VirtualHost>
<VirtualHost *:443>
DocumentRoot /var/www/html
ServerName tedspikes.com
ServerAlias www.tedspikes.com
SSLEngine On
<Directory />
Require all granted
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
Когда я начинаю апача, он бросает это:
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
который я взял, как «кто-то слушает мой порт 80». Вот парадокс:
[email protected]:~$ sudo netstat -nlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 889/sshd
tcp 0 0 0.0.0.0:1723 0.0.0.0:* LISTEN 903/pptpd
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 987/mysqld
tcp6 0 0 :::22 :::* LISTEN 889/sshd
udp 0 0 188.166.36.165:123 0.0.0.0:* 1367/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 1367/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 1367/ntpd
udp6 0 0 fe80::601:37ff:fefd:123 :::* 1367/ntpd
udp6 0 0 ::1:123 :::* 1367/ntpd
udp6 0 0 :::123 :::* 1367/ntpd
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node PID/Program name Path
unix 2 [ ACC ] STREAM LISTENING 9254 895/acpid /var/run/acpid.socket
unix 2 [ ACC ] STREAM LISTENING 9515 987/mysqld /var/run/mysqld/mysqld.sock
unix 2 [ ACC ] STREAM LISTENING 7004 1/init @/com/ubuntu/upstart
unix 2 [ ACC ] STREAM LISTENING 8919 691/dbus-daemon /var/run/dbus/system_bus_socket
unix 2 [ ACC ] SEQPACKET LISTENING 7651 324/systemd-udevd /run/udev/control
Так, апач не запускается, потому что кто-то коробления порт 80, но там нет никого на этом порту! Что происходит? Я что-то сломал в virtualhost?
Исправлена директива listen, теперь она выдает две ошибки, как для портов 80, так и для 443. Что касается modrewrite, документация apache говорит, что это плохой способ перенаправления ssl и рекомендует перенаправление через virtualhost. – TedSpikes