Redirecionar alias, mas não IP

1

Eu tenho um servidor privado virtual no debian 7.

Neste servidor, tenho um site acessível, digamos link

Meu endereço IP é digamos 212.227.100.200 e posso acessar phpMyAdmin através de 212.227.100.200/phpmyadmin

Eu quero redirecionar as pessoas que escrevem monsiteweb.fr * .monsiteweb.fr para o link .

O problema é que quando eu faço este redirecionamento, não consigo mais acessar o 212.227.100.200/phpmyadmin que é reescrito automaticamente para htps: //www.monsiteweb.fr/phpmyadmin (I escrever htps em vez de https porque não posso adicionar mais do que 2 links no post)

Como posso fazer isso para que monsiteweb.fr * .monsiteweb.fr sejam redirecionados para htps: //www.monsiteweb.fr mas 212.227.100.200 não seja redirecionado ?

Em / etc / apache2 / sites-enabled / Eu tenho 3 arquivos onde eu provavelmente confuso por inexperiência:

Arquivo 1: 000-default

    <VirtualHost *:80>
    ServerAdmin [email protected] 
    ServerName monsiteweb.fr
    ServerAlias monsiteweb.fr *.monsiteweb.fr
    Redirect permanent   / https://www.monsiteweb.fr

    DocumentRoot /var/www
    <Directory />
    Options FollowSymLinks
    AllowOverride None
    </Directory>
    <Directory /var/www/>
    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>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>

Arquivo 2: monsiteweb.fr

    NameVirtualHost *:443

    <VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName monsiteweb.fr
    ServerAlias monsiteweb.fr *.monsiteweb.fr
    </VirtualHost>

    <VirtualHost *:443>
    ServerAdmin [email protected]
    ServerName monsiteweb.fr
    ServerAlias monsiteweb.fr *.monsiteweb.fr

    SSLEngine On
    SSLCertificateKeyFile /etc/apache2/ssl.certs/geotrust_privatekey_2016.key
    SSLCertificateFile /etc/apache2/ssl.certs/geotrust_publickey_2016.crt
    SSLCertificateChainFile /etc/apache2/ssl.certs/geotrust_intermediateca_2016.crt

   DocumentRoot /home/monsiteweb/www/


   <Directory /home/monsiteweb/www/>
   Options -Indexes
   AllowOverride All
  </Directory>

  </VirtualHost>

Arquivo 3: default-ssl

   <VirtualHost *:80>
   ServerAdmin [email protected]
   ServerName monsiteweb.fr
   ServerAlias monsiteweb.fr *.monsiteweb.fr


   DocumentRoot /home/monsiteweb/www
   <Directory />
   Options FollowSymLinks
   AllowOverride None
   </Directory>
   <Directory /var/www/>
   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>

  ErrorLog ${APACHE_LOG_DIR}/error.log

  LogLevel warn

  CustomLog ${APACHE_LOG_DIR}/access.log combined
  </VirtualHost>
    
por michltm 27.04.2016 / 11:23

1 resposta

0

Primeiro, você deve ser capaz de acessar o phpMyAdmin usando o link ou um IP local link (por exemplo).

Agora, se você deseja acessar o phpMyAdmin usando seu IP público, é necessário pensar em possíveis problemas de segurança. Você pode pelo menos restringir o acesso a determinados IPs e fazer Autorizações adicionais.

Seus VirtualHosts em execução. É um sistema baseado em nomes. Se uma solicitação vier, o sistema procurará o VirtualHost que corresponde à solicitação e o baseará em ServerName e ServerAlias. Se o nome não for encontrado, o sistema responderá automaticamente com o DEFAULT VIRTUAL HOST-000-default.conf e o default-ssl.conf.

Com o link , seu_Public_IP seria pesquisado entre os hosts nomeados e, obviamente, ele não o encontrará lá. Então, ele responderá com o que estiver no host virtual padrão (que você configurou para servir o link ).

Você mencionou que qualquer um que aponte para o monsiteweb.fr deve ser redirecionado para o link . Então, suponho que você não deseja que as pessoas que usam o link sejam redirecionadas para lá também.

Você pode configurar um redirecionamento simples:

<VirtualHost *:80>
  ServerName *.monsiteweb.fr
  Redirect 301 / https://www.monsiteweb.fr
</VirtualHost>

Isso redirecionará todo o tráfego, exceto o tráfego do link . Se você usa isso para acessar o phpMyAdmin, ele já deve funcionar.

    
por 27.04.2016 / 12:22