Я получил сервер LAMP, работающий в Ubuntu 11.04. Теперь проблема заключается в том, что веб-сайты должны быть включены и отключены от терминала. Все из них должны быть доступны из http://localhost, что не так эффективно. Поэтому я создал VHOSTS, используя некоторые обучающие программы из сети. Вот код для него
<VirtualHost *:80>
ServerAdmin webmaster@localhost
Servername site.com
ServerAlias www.site.com
DocumentRoot /home/starx/public_html/site/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/starx/public_html/site/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
nGen
ErrorLog ${APACHE_LOG_DIR}/site-error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/site-access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
Теперь я все еще не могу получить доступ к странице в http://site.com, но если я получаю доступ, используя http://localhsot/, к ней обращаются.
I отключили все остальные сайты, включая default, и только что включили один сайт, т.е. site
Как это исправить?
Я просто пытался заставить это работать, и немного оглядевшись, я узнал, что для меня не так.
Я запускаю xampp (lampp) 1.80 для Ubuntu 12.04.
открыть /opt/lampp/etc/httpd.conf
См. Строка 488
# Virtual hosts
# Include etc/extra/httpd-vhosts.conf
удалите «#» из include. Новая установка не загружает httpd-vhosts.conf из коробки.
Согласно /usr/share/doc/apache2/README.Debian.gz, если вы хотите создать определения для дополнительных сайтов, вы захотите разместить отдельные фрагменты конфигурации сайта в /etc/apache2/sites-available/ (см. /etc/apache2/sites-available/default для примера). Затем вы можете включать и отключать сайты на данном хосте с помощью команд a2ensite (8) и a2dissite (8). Обратите внимание, что это может работать не так, как описано, если распределенные конфигурации были значительно изменены.
Если сайт включен таким образом и продолжает не работать, вы должны убедиться, что веб-сервер может разрешить имя нового сайта таким образом, который соответствует IP-адресу, который веб-сервер считает, что он назначен: самый простой способ, вероятно, проверить с w3m https://my.new.secure.site с сервера. Вы также хотите проверить, что клиент разрешает имя таким образом, чтобы он попадал на соответствующий сервер (хотя разрешенный IP-адрес не должен совпадать с тем, который использует сервер). Для небезопасных сайтов это проще всего с telnet my.new.site 80 и, как только соединение будет завершено (нет приглашения), введите следующие три строки (обратите внимание, что третий пуст, но вы должны нажать клавишу в третий раз):
GET / HTTP/1.1 Host: my.new.siteЕсли это работает, все остальное является проблемой браузера. Если первое завершается успешно, а второе не работает, на сетевом уровне (например, NAT, прокси и т. Д.), Возможно, что-то странное: именно то, как устранять неполадки, слишком сильно зависит от топологии сети и присутствующих устройств: задайте другой вопрос со спецификой если это относится к вам.
Если первый тест не прошел, дважды проверьте службу имен, доступную на сервере, и IP-адреса, назначенные серверу (ifconfig -a). Также проверьте журналы доступа к сайту, чтобы убедиться, что вы видите соединение примерно в нужное время. Наконец, убедитесь, что ваш виртуальный хост прослушивается по имени, а не по IP, и не фильтрует результаты для / на основе IP в вашей директиве VirtualHost.
Добавили ли вы сайт site.com и www.site.com в файл / etc / hosts, чтобы убедиться, что маршрутизация dns правильная? Вы можете попробовать nslookup site.com проверить dns.
Если вы хотите убедиться, что http://localhost не работает, удалите файлы / etc / apache2 / default, default-ssl и используйте один виртуальный хост .
Я не уверен, что это то, что вы хотите.
Замените ваши коды на эти простые короткие коды.
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot YourDocumentRoot
ServerName site.com
ServerAlias www.site.com
ErrorLog localhost
CustomLog localhost-access_log common
</VirtualHost>
Вы можете узнать больше о vhost здесь
Я просто пытался заставить это работать, и немного оглядевшись, я узнал, что для меня не так.
Я запускаю xampp (lampp) 1.80 для Ubuntu 12.04.
открыть /opt/lampp/etc/httpd.conf
См. Строка 488
# Virtual hosts
# Include etc/extra/httpd-vhosts.conf
удалите «#» из include. Новая установка не загружает httpd-vhosts.conf из коробки.
Согласно /usr/share/doc/apache2/README.Debian.gz, если вы хотите создать определения для дополнительных сайтов, вы захотите разместить отдельные фрагменты конфигурации сайта в /etc/apache2/sites-available/ (см. /etc/apache2/sites-available/default для примера). Затем вы можете включать и отключать сайты на данном хосте с помощью команд a2ensite (8) и a2dissite (8). Обратите внимание, что это может работать не так, как описано, если распределенные конфигурации были значительно изменены.
Если сайт включен таким образом и продолжает не работать, вы должны убедиться, что веб-сервер может разрешить имя нового сайта таким образом, который соответствует IP-адресу, который веб-сервер считает, что он назначен: самый простой способ, вероятно, проверить с w3m https://my.new.secure.site с сервера. Вы также хотите проверить, что клиент разрешает имя таким образом, чтобы он попадал на соответствующий сервер (хотя разрешенный IP-адрес не должен совпадать с тем, который использует сервер). Для небезопасных сайтов это проще всего с telnet my.new.site 80 и, как только соединение будет завершено (нет приглашения), введите следующие три строки (обратите внимание, что третий пуст, но вы должны нажать клавишу в третий раз):
GET / HTTP/1.1 Host: my.new.siteЕсли это работает, все остальное является проблемой браузера. Если первое завершается успешно, а второе не работает, на сетевом уровне (например, NAT, прокси и т. Д.), Возможно, что-то странное: именно то, как устранять неполадки, слишком сильно зависит от топологии сети и присутствующих устройств: задайте другой вопрос со спецификой если это относится к вам.
Если первый тест не прошел, дважды проверьте службу имен, доступную на сервере, и IP-адреса, назначенные серверу (ifconfig -a). Также проверьте журналы доступа к сайту, чтобы убедиться, что вы видите соединение примерно в нужное время. Наконец, убедитесь, что ваш виртуальный хост прослушивается по имени, а не по IP, и не фильтрует результаты для / на основе IP в вашей директиве VirtualHost.
Добавили ли вы сайт site.com и www.site.com в файл / etc / hosts, чтобы убедиться, что маршрутизация dns правильная? Вы можете попробовать nslookup site.com проверить dns.
Если вы хотите убедиться, что http://localhost не работает, удалите файлы / etc / apache2 / default, default-ssl и используйте один виртуальный хост .
Я не уверен, что это то, что вы хотите.
Замените ваши коды на эти простые короткие коды.
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot YourDocumentRoot
ServerName site.com
ServerAlias www.site.com
ErrorLog localhost
CustomLog localhost-access_log common
</VirtualHost>
Вы можете узнать больше о vhost здесь
Я просто пытался заставить это работать, и немного оглядевшись, я узнал, что для меня не так.
Я запускаю xampp (lampp) 1.80 для Ubuntu 12.04.
открыть /opt/lampp/etc/httpd.conf
См. Строка 488
# Virtual hosts
# Include etc/extra/httpd-vhosts.conf
удалите «#» из include. Новая установка не загружает httpd-vhosts.conf из коробки.
Согласно /usr/share/doc/apache2/README.Debian.gz, если вы хотите создать определения для дополнительных сайтов, вы захотите разместить отдельные фрагменты конфигурации сайта в /etc/apache2/sites-available/ (см. /etc/apache2/sites-available/default для примера). Затем вы можете включать и отключать сайты на данном хосте с помощью команд a2ensite (8) и a2dissite (8). Обратите внимание, что это может работать не так, как описано, если распределенные конфигурации были значительно изменены.
Если сайт включен таким образом и продолжает не работать, вы должны убедиться, что веб-сервер может разрешить имя нового сайта таким образом, который соответствует IP-адресу, который веб-сервер считает, что он назначен: самый простой способ, вероятно, проверить с w3m https://my.new.secure.site с сервера. Вы также хотите проверить, что клиент разрешает имя таким образом, чтобы он попадал на соответствующий сервер (хотя разрешенный IP-адрес не должен совпадать с тем, который использует сервер). Для небезопасных сайтов это проще всего с telnet my.new.site 80 и, как только соединение будет завершено (нет приглашения), введите следующие три строки (обратите внимание, что третий пуст, но вы должны нажать клавишу в третий раз):
GET / HTTP/1.1 Host: my.new.siteЕсли это работает, все остальное является проблемой браузера. Если первое завершается успешно, а второе не работает, на сетевом уровне (например, NAT, прокси и т. Д.), Возможно, что-то странное: именно то, как устранять неполадки, слишком сильно зависит от топологии сети и присутствующих устройств: задайте другой вопрос со спецификой если это относится к вам.
Если первый тест не прошел, дважды проверьте службу имен, доступную на сервере, и IP-адреса, назначенные серверу (ifconfig -a). Также проверьте журналы доступа к сайту, чтобы убедиться, что вы видите соединение примерно в нужное время. Наконец, убедитесь, что ваш виртуальный хост прослушивается по имени, а не по IP, и не фильтрует результаты для / на основе IP в вашей директиве VirtualHost.
Добавили ли вы сайт site.com и www.site.com в файл / etc / hosts, чтобы убедиться, что маршрутизация dns правильная? Вы можете попробовать nslookup site.com проверить dns.
Если вы хотите убедиться, что http://localhost не работает, удалите файлы / etc / apache2 / default, default-ssl и используйте один виртуальный хост .
Я не уверен, что это то, что вы хотите.
Замените ваши коды на эти простые короткие коды.
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot YourDocumentRoot
ServerName site.com
ServerAlias www.site.com
ErrorLog localhost
CustomLog localhost-access_log common
</VirtualHost>
Вы можете узнать больше о vhost здесь
Я просто пытался заставить это работать, и немного оглядевшись, я узнал, что для меня не так.
Я запускаю xampp (lampp) 1.80 для Ubuntu 12.04.
открыть /opt/lampp/etc/httpd.conf
См. Строка 488
# Virtual hosts
# Include etc/extra/httpd-vhosts.conf
удалите «#» из include. Новая установка не загружает httpd-vhosts.conf из коробки.
Согласно /usr/share/doc/apache2/README.Debian.gz, если вы хотите создать определения для дополнительных сайтов, вы захотите разместить отдельные фрагменты конфигурации сайта в /etc/apache2/sites-available/ (см. /etc/apache2/sites-available/default для примера). Затем вы можете включать и отключать сайты на данном хосте с помощью команд a2ensite (8) и a2dissite (8). Обратите внимание, что это может работать не так, как описано, если распределенные конфигурации были значительно изменены.
Если сайт включен таким образом и продолжает не работать, вы должны убедиться, что веб-сервер может разрешить имя нового сайта таким образом, который соответствует IP-адресу, который веб-сервер считает, что он назначен: самый простой способ, вероятно, проверить с w3m https://my.new.secure.site с сервера. Вы также хотите проверить, что клиент разрешает имя таким образом, чтобы он попадал на соответствующий сервер (хотя разрешенный IP-адрес не должен совпадать с тем, который использует сервер). Для небезопасных сайтов это проще всего с telnet my.new.site 80 и, как только соединение будет завершено (нет приглашения), введите следующие три строки (обратите внимание, что третий пуст, но вы должны нажать клавишу в третий раз):
GET / HTTP/1.1 Host: my.new.siteЕсли это работает, все остальное является проблемой браузера. Если первое завершается успешно, а второе не работает, на сетевом уровне (например, NAT, прокси и т. Д.), Возможно, что-то странное: именно то, как устранять неполадки, слишком сильно зависит от топологии сети и присутствующих устройств: задайте другой вопрос со спецификой если это относится к вам.
Если первый тест не прошел, дважды проверьте службу имен, доступную на сервере, и IP-адреса, назначенные серверу (ifconfig -a). Также проверьте журналы доступа к сайту, чтобы убедиться, что вы видите соединение примерно в нужное время. Наконец, убедитесь, что ваш виртуальный хост прослушивается по имени, а не по IP, и не фильтрует результаты для / на основе IP в вашей директиве VirtualHost.
Добавили ли вы сайт site.com и www.site.com в файл / etc / hosts, чтобы убедиться, что маршрутизация dns правильная? Вы можете попробовать nslookup site.com проверить dns.
Если вы хотите убедиться, что http://localhost не работает, удалите файлы / etc / apache2 / default, default-ssl и используйте один виртуальный хост .
Я не уверен, что это то, что вы хотите.
Замените ваши коды на эти простые короткие коды.
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot YourDocumentRoot
ServerName site.com
ServerAlias www.site.com
ErrorLog localhost
CustomLog localhost-access_log common
</VirtualHost>
Вы можете узнать больше о vhost здесь
Я просто пытался заставить это работать, и немного оглядевшись, я узнал, что для меня не так.
Я запускаю xampp (lampp) 1.80 для Ubuntu 12.04.
открыть /opt/lampp/etc/httpd.conf
См. Строка 488
# Virtual hosts
# Include etc/extra/httpd-vhosts.conf
удалите «#» из include. Новая установка не загружает httpd-vhosts.conf из коробки.
Согласно /usr/share/doc/apache2/README.Debian.gz, если вы хотите создать определения для дополнительных сайтов, вы захотите разместить отдельные фрагменты конфигурации сайта в /etc/apache2/sites-available/ (см. /etc/apache2/sites-available/default для примера). Затем вы можете включать и отключать сайты на данном хосте с помощью команд a2ensite (8) и a2dissite (8). Обратите внимание, что это может работать не так, как описано, если распределенные конфигурации были значительно изменены.
Если сайт включен таким образом и продолжает не работать, вы должны убедиться, что веб-сервер может разрешить имя нового сайта таким образом, который соответствует IP-адресу, который веб-сервер считает, что он назначен: самый простой способ, вероятно, проверить с w3m https://my.new.secure.site с сервера. Вы также хотите проверить, что клиент разрешает имя таким образом, чтобы он попадал на соответствующий сервер (хотя разрешенный IP-адрес не должен совпадать с тем, который использует сервер). Для небезопасных сайтов это проще всего с telnet my.new.site 80 и, как только соединение будет завершено (нет приглашения), введите следующие три строки (обратите внимание, что третий пуст, но вы должны нажать клавишу в третий раз):
GET / HTTP/1.1 Host: my.new.siteЕсли это работает, все остальное является проблемой браузера. Если первое завершается успешно, а второе не работает, на сетевом уровне (например, NAT, прокси и т. Д.), Возможно, что-то странное: именно то, как устранять неполадки, слишком сильно зависит от топологии сети и присутствующих устройств: задайте другой вопрос со спецификой если это относится к вам.
Если первый тест не прошел, дважды проверьте службу имен, доступную на сервере, и IP-адреса, назначенные серверу (ifconfig -a). Также проверьте журналы доступа к сайту, чтобы убедиться, что вы видите соединение примерно в нужное время. Наконец, убедитесь, что ваш виртуальный хост прослушивается по имени, а не по IP, и не фильтрует результаты для / на основе IP в вашей директиве VirtualHost.
Добавили ли вы сайт site.com и www.site.com в файл / etc / hosts, чтобы убедиться, что маршрутизация dns правильная? Вы можете попробовать nslookup site.com проверить dns.
Если вы хотите убедиться, что http://localhost не работает, удалите файлы / etc / apache2 / default, default-ssl и используйте один виртуальный хост .
Я не уверен, что это то, что вы хотите.
Замените ваши коды на эти простые короткие коды.
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot YourDocumentRoot
ServerName site.com
ServerAlias www.site.com
ErrorLog localhost
CustomLog localhost-access_log common
</VirtualHost>
Вы можете узнать больше о vhost здесь
Я просто пытался заставить это работать, и немного оглядевшись, я узнал, что для меня не так.
Я запускаю xampp (lampp) 1.80 для Ubuntu 12.04.
открыть /opt/lampp/etc/httpd.conf
См. Строка 488
# Virtual hosts
# Include etc/extra/httpd-vhosts.conf
удалите «#» из include. Новая установка не загружает httpd-vhosts.conf из коробки.
Согласно /usr/share/doc/apache2/README.Debian.gz, если вы хотите создать определения для дополнительных сайтов, вы захотите разместить отдельные фрагменты конфигурации сайта в /etc/apache2/sites-available/ (см. /etc/apache2/sites-available/default для примера). Затем вы можете включать и отключать сайты на данном хосте с помощью команд a2ensite (8) и a2dissite (8). Обратите внимание, что это может работать не так, как описано, если распределенные конфигурации были значительно изменены.
Если сайт включен таким образом и продолжает не работать, вы должны убедиться, что веб-сервер может разрешить имя нового сайта таким образом, который соответствует IP-адресу, который веб-сервер считает, что он назначен: самый простой способ, вероятно, проверить с w3m https://my.new.secure.site с сервера. Вы также хотите проверить, что клиент разрешает имя таким образом, чтобы он попадал на соответствующий сервер (хотя разрешенный IP-адрес не должен совпадать с тем, который использует сервер). Для небезопасных сайтов это проще всего с telnet my.new.site 80 и, как только соединение будет завершено (нет приглашения), введите следующие три строки (обратите внимание, что третий пуст, но вы должны нажать клавишу в третий раз):
GET / HTTP/1.1 Host: my.new.siteЕсли это работает, все остальное является проблемой браузера. Если первое завершается успешно, а второе не работает, на сетевом уровне (например, NAT, прокси и т. Д.), Возможно, что-то странное: именно то, как устранять неполадки, слишком сильно зависит от топологии сети и присутствующих устройств: задайте другой вопрос со спецификой если это относится к вам.
Если первый тест не прошел, дважды проверьте службу имен, доступную на сервере, и IP-адреса, назначенные серверу (ifconfig -a). Также проверьте журналы доступа к сайту, чтобы убедиться, что вы видите соединение примерно в нужное время. Наконец, убедитесь, что ваш виртуальный хост прослушивается по имени, а не по IP, и не фильтрует результаты для / на основе IP в вашей директиве VirtualHost.
Добавили ли вы сайт site.com и www.site.com в файл / etc / hosts, чтобы убедиться, что маршрутизация dns правильная? Вы можете попробовать nslookup site.com проверить dns.
Если вы хотите убедиться, что http://localhost не работает, удалите файлы / etc / apache2 / default, default-ssl и используйте один виртуальный хост .
Я не уверен, что это то, что вы хотите.
Замените ваши коды на эти простые короткие коды.
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot YourDocumentRoot
ServerName site.com
ServerAlias www.site.com
ErrorLog localhost
CustomLog localhost-access_log common
</VirtualHost>
Вы можете узнать больше о vhost здесь