A atualização para 16.04 LTS quebrou o apache

0

Eu tinha um ubuntu 14.04 em pleno funcionamento com o apache2 servindo um site ror com o Passenger Standalone no proxy reverso. Depois de atualizar para o 16.04, tudo parou de funcionar, embora eu ainda possa acessar o site usando o 'apenas' passageiro autônomo.

Depois de muitas investigações, chego à conclusão de que há algo errado com a instalação básica do apache2 em minha máquina. Então voltei ao básico.

Eu criei um VirtualHost que é o seguinte:

    Nomedoservidor pd     DocumentRoot /home/purvez/www/testapp/public

Eu salvei isso como um arquivo em /etc/apache2/sites-available/pd.conf

Em seguida, executei sudo a2ensite pd.conf , que colocou um link simbólico em /etc/apache2/sites-enabled/pd.conf

Eu tenho um index.html muito simples, que consiste em uma única linha da seguinte forma:

<h1>Test pd site</h1>

e eu também tenho uma entrada nos hosts

127.0.0.1  pd

Eu reiniciei o servidor apache e reiniciei a máquina.

No entanto, quando vou para o pd em uma página da web, tudo o que eu obtenho é a Página Padrão do Apache2 Ubuntu (a parte inicial tem este texto) ...

Página inicial do Ubuntu Logo Apache2 Ubuntu Funciona!

Esta é a página padrão de boas-vindas usada para testar a operação correta do servidor Apache2 após a instalação nos sistemas Ubuntu. Ele é baseado na página equivalente no Debian, da qual o pacote do Ubuntu Apache é derivado. Se você puder ler esta página, isso significa que o servidor HTTP Apache instalado neste site está funcionando corretamente. Você deve substituir este arquivo (localizado em /var/www/html/index.html ) antes de continuar a operar seu servidor HTTP.

Se você é um usuário normal deste site e não sabe o que é esta página, isso provavelmente significa que o site está indisponível no momento devido à manutenção. Se o problema persistir, entre em contato com o administrador do site. Visão Geral da Configuração

etc.

A outra coisa louca é que mesmo que eu desligue o serviço do apache eu ainda recebo a mesma página.

Atualmente, parece-me que o apache2 NÃO está funcionando ou se o trabalho está apenas exibindo a "Página padrão".

---------- Edite 1 para @eldergeek que queria o apache2.conf completo

#
# Based upon the NCSA server configuration files originally by Rob McCool.
#
# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.2/ for detailed information about
# the directives.
#
# Do NOT simply read the instructions in here without understanding
# what they do.  They're here only as hints or reminders.  If you are unsure
# consult the online docs. You have been warned.  
#
# The configuration directives are grouped into three basic sections:
#  1. Directives that control the operation of the Apache server process as a
#     whole (the 'global environment').
#  2. Directives that define the parameters of the 'main' or 'default' server,
#     which responds to requests that aren't handled by a virtual host.
#     These directives also provide default values for the settings
#     of all virtual hosts.
#  3. Settings for virtual hosts, which allow Web requests to be sent to
#     different IP addresses or hostnames and have them handled by the
#     same Apache server process.
#
# Configuration and logfile names: If the filenames you specify for many
# of the server's control files begin with "/" (or "drive:/" for Win32), the
# server will use that explicit path.  If the filenames do *not* begin
# with "/", the value of ServerRoot is prepended -- so "foo.log"
# with ServerRoot set to "/etc/apache2" will be interpreted by the
# server as "/etc/apache2/foo.log".
#

### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation (available
# at <URL:http://httpd.apache.org/docs/2.2/mod/mpm_common.html#lockfile>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
#ServerRoot "/etc/apache2"

#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
# LockFile ${APACHE_LOCK_DIR}/accept.lock

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5

##
## Server-Pool Size Regulation (MPM specific)
## 

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# worker MPM
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadLimit: ThreadsPerChild can be changed to this maximum value during a
#              graceful restart. ThreadLimit can only be changed by stopping
#              and starting Apache.
# ThreadsPerChild: constant number of worker threads in each server process
# MaxClients: maximum number of simultaneous client connections
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75 
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# event MPM
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxClients: maximum number of simultaneous client connections
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_event_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75 
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}

#
# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#

AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being 
# viewed by Web clients. 
#
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy all
</Files>

#
# DefaultType is the default MIME type the server will use for a document
# if it cannot otherwise determine one, such as from filename extensions.
# If your server contains mostly text or HTML documents, "text/plain" is
# a good value.  If most of your content is binary, such as applications
# or images, you may want to use "application/octet-stream" instead to
# keep browsers from trying to display binary files as though they are
# text.
#
# It is also possible to omit any default MIME type and let the
# client's browser guess an appropriate action instead. Typically the
# browser will decide based on the file's extension then. In cases
# where no good assumption can be made, letting the default MIME type
# unset is suggested  instead of forcing the browser to accept
# incorrect  metadata.
#
DefaultType None


#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog ${APACHE_LOG_DIR}/error.log

#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn

# Include module configuration:
Include mods-enabled/*.load
Include mods-enabled/*.conf

# Include all the user configurations:
# Include httpd.conf

# Include ports listing
Include ports.conf

#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
# If you are behind a reverse proxy, you might want to change %h into %{X-Forwarded-For}i
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.

# Include generic snippets of statements
#Include conf.d/

# Include the virtual host configurations:
Include sites-enabled/

ServerName nexar

#LoadModule passenger_module /home/purvez/.rvm/gems/ruby-1.9.3-p0@global/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
#PassengerRoot /home/purvez/.rvm/gems/ruby-1.9.3-p0@global/gems/passenger-3.0.11
#PassengerRuby /home/purvez/.rvm/wrappers/ruby-1.9.3-p0/ruby

----------------- Fim da edição 1

======== Editar 2: Aqui está a saída do comando no cli de:

systemctl status apache2.service

systemctl status apache2.service
● apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: inactive (dead) since Wed 2017-04-12 20:05:23 BST; 8min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 15645 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCES
  Process: 15628 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCC

Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15628]: (98)Address already 
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15628]: (98)Address already 
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15628]: no listening sockets
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15628]: AH00015: Unable to o
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15628]: Action 'start' faile
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15628]: The Apache error log
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15628]:  *
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15645]:  * Stopping Apache h
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 apache2[15645]:  *
Apr 12 20:05:23 127.0.1.1purvez-Aspire-5750 systemd[1]: Started LSB: Apache2 web
purvez@127:~$ 

Eu não professo entender tudo isso, mas parece que o Apache2 está rodando. Embora a seguinte linha (cerca de 5/6 do início do comando seja um pouco preocupante):

Ativo: inativo (morto) desde Qua 2017-04-12 20:05:23 BST; 8min atrás

================= Fim da edição 2

    
por Purvez 12.04.2017 / 18:35

2 respostas

0

Tente isso como pd.conf

<VirtualHost *:80>
ServerName pd
DocumentRoot /home/purvez/www/testapp/public
<Directory /home/purvez/www/testapp/public>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>

</VirtualHost>

Reinicie o Apache e tente.

    
por Will 12.04.2017 / 19:32
0

Você tem algo mais em execução na porta 80 (lsof -i: 80 como root) ou diretivas de escuta sobrepostas (para a porta 80) em seus vários arquivos de configuração (grep -ri Listen / etc / apache2)

    
por covener 18.04.2017 / 17:30