Portál AbcLinuxu, 23. dubna 2024 15:30


Dotaz: non www presmerovat na www

5.3.2016 12:25 jany2 | skóre: 30 | blog: jany_blog
non www presmerovat na www
Přečteno: 462×
Odpovědět | Admin
Zacnem od zaciatku aka je moja situacia.
internet <-----> vdsl_modem_bridge <----> mikrotik_verejna_ip <----> lan <----> linux_lamp
Gateway mikrotiku 192.168.1.1
Vytvorenie virtualhost na linuxe:
mkdir /var/www/www.nieco_1.ddns.com
mkdir /var/www/www.nieco_2.ddns.com
uprava, www.nieco_1.ddns.com.conf
nano /etc/apache2/sites-available/www.nieco_1.ddns.com.conf
<
<VirtualHost *:80>
	ServerAdmin webmaster@localhost
	ServerName www.nieco_1.ddns.com

	DocumentRoot /var/www/www.nieco_1.ddns.com
	<Directory / >
		Options FollowSymLinks
		AllowOverride All
	</Directory >
	 <Directory /var/www/www.nieco_1.ddns.com/ >
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		allow from all
	 </Directory >

	ErrorLog ${APACHE_LOG_DIR}/error.log

	LogLevel warn

	CustomLog ${APACHE_LOG_DIR}/access.log combined

    </VirtualHost >
Pre www.nieco_2.ddns.com.conf to iste (samozrejme s cislom 2)
Na free dyndns servery som si vytvoril domenu www.nieco_1.ddns.com a www.nieco_2.ddns.com
Apachi povieme, aby prestal zobrazovat default a aby zobrazoval virtualhosty
a2ensite www.nieco_1.ddns.com.conf
a2ensite www.nieco_2.ddns.com.conf
a2dissite 000-default.conf
service apache2 reload
Na mikrotiku som si vytvoril v ip > dns > static, staticke zaznamy
www.nieco_1.ddns.com
www.nieco_2.ddns.com
V MK som si pridal skrip, ktory kazdych x minut aktualizuje moju verejnu IP a pri zmene ju na dyndns prepisuje.
Ak sa teraz v LAN pripojim na www.nieco_1.ddns.com tak to funguje korektne, tak isto aj www.nieco_2.ddns.com. Ak vsak zadam adresu bez www, tak ma to hodi na gateway (cize 192.168.1.1) pricom v url je nieco_1.ddns.com.
Hladal som, ako presmerovat stranku bez zadania www na stranku s www a podla toho som postupoval:
Upravit apache2.conf odremovat direktivu AccessFileName .htaccess
nano /etc/apache2/apache2.conf
A zmenit
<Directory /var/www/>
         Options Indexes FollowSymLinks
         AllowOverride None
         Require all granted
</Directory>
na
AllowOverride all
samozrejme zmenil som to aj v
nano /etc/apache2/sites-available/www.nieco_1.ddns.com.conf
Nasledne povolit rewrite a restart apache2
sudo a2enmod rewrite
sudo service apache2 restart
V korenovom adresary www.nieco_1.ddns.com vytvorit subor .htaccess a vlozit tam nasledovne
RewriteEngine On
RewriteCond %{HTTP_HOST} ^nieco_1.ddns.com
RewriteRule (.*) http://www.nieco_1.ddns.com/$1 [R=301,L]
a restart apache.
Ak teraz nezadam na zaciatku www, tak stale mi zobrazuje obsah 192.168.1.1 (cize web mikrotiku). Vedel by niekto poradit ?
thx
upozornujem, ze v linuxe som vecny zaciatocnik ...

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

5.3.2016 14:01 NN
Rozbalit Rozbalit vše Re: non www presmerovat na www
Odpovědět | | Sbalit | Link | Blokovat | Admin
Stejne jako jsi nastavil stacike DNS zaznamy pro 'www.neco.ddns.com', musis vytvorit staticke zaznamy pro 'neco.ddns.com'. Kazda domena i subdomena ma svuj zaznam, jinak se na ni neda odkazvat. Ve skutecnosti se to konfiguruje presne naopak.

Take uprava v apache byla cela zbytecna. Jednoduzsi reseni je identickemu virtualhostu priradit vice jmen:
ServerName www.nieco.ddns.com nieco.ddns.com
5.3.2016 19:47 jany2 | skóre: 30 | blog: jany_blog
Rozbalit Rozbalit vše Re: non www presmerovat na www
Po pridani
ServerName www.nieco.ddns.com nieco.ddns.com
apache vihodi
jany2@server:~$ sudo service apache2 restart
 * Restarting web server apache2                                                                                                                                                                                                      [fail]
 * The apache2 configtest failed.
Output of config test was:
AH00526: Syntax error on line 3 of /etc/apache2/sites-enabled/www.nieco.ddns.com.conf:
ServerName takes one argument, The hostname and port of the server
Action 'configtest' failed.
The Apache error log may have more information.
Vytvoril som na MK ip > dns > staic dalsie zaznamy bez www (+ vypol som v MK ip > service www)
2 X www         80
tym padom je zakazany 192.168.1.1.
Chcem este napisat, ze virtualhostov mam 6. Teraz ked zadam akukolvek adresu bez www, tak ma to hodi vzdy na jeden urcity web z tych 6 webov co mam. Pritom ten web nie je nijak specialne privilegovany, ma presne take iste nastavenia ako ostatne virtualhosty
upozornujem, ze v linuxe som vecny zaciatocnik ...
Řešení 1× (jany2 (tazatel))
5.3.2016 20:25 NN
Rozbalit Rozbalit vše Re: non www presmerovat na www
My bad, je to ServerAlias, omluva:
ServerName neco.ddns.com
ServerAlias www.neco.ddns.com
Takto si zaridis, ze stejna domena spadne do spravneho virtualhostu. Rewrite se da pouzit taky, ale pro pripad, ze chces prepisovat dotazy ie. "chci vsechno presmerovavat na www.XY bez ohledu ma dotaz".

Jedna se o tzv. 'name based' virtual hosty(volba konfigurace) => apache pozna podle domeny kam co patri. Vsechny Zaznamy DNS pro kazdou domenu/subdomenu nasmerujes uplne stejne.
5.3.2016 21:24 jany2 | skóre: 30 | blog: jany_blog
Rozbalit Rozbalit vše Re: non www presmerovat na www
Aha ... takze po pridani "ServerAlias" to uz teraz funguje. Ak otvorim web bez www, tak to otvori spravny web, ale neprida do url www. Resp. prida to aj www, ale musim mat v koreni pouzity .htaccess (s obsahom vid moj prvy prispevok)
very thx NN
upozornujem, ze v linuxe som vecny zaciatocnik ...
7.3.2016 13:36 scott | skóre: 15
Rozbalit Rozbalit vše Re: non www presmerovat na www
Ano, jinak to ani nejde - ServerAlias ani jina direktiva ti URL neprepise, to uz se musi pres .htaccess
7.3.2016 13:43 Filip Jirsák
Rozbalit Rozbalit vše Re: non www presmerovat na www
mod_rewrite, které se používá pro přepis adresy, je samozřejmě možné používat i v konfiguraci Apache, nemusí být jen v souboru .htaccess. Naopak pro takovéhle použití je nevhodné mít to v .htacces, to je soubor určený pro to, aby jej editoval autor obsahu webu, když nemá ke konfiguračním souborů serveru přístup.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.