[ squirll @ 28.10.2010. 11:34 ] @
Pozdrav...
Na sajtu sam stavio da sve *.html stranice idu preko porta 80 a php na port 443
I to radi (donekle) ali imam problem

kad prebacuje sa 80 na 443 i obratno dobijem "moved Permanatly" stranicu sa linkom gde redirektuje...
Mene zanima kako to izbeci?
Verujem da je se resava u konfiguraciji apacha, ovo sam i ranije radio al nisam imao ovaj problem

Code:

        SSLCertificateFile /root/asset.crt
        SSLCertificateKeyFile /root/asset.key
        Options +FollowSymLinks
        RewriteEngine On

RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*) https://www.sajt.com$1 [R=301,L]


Trenutno ovo koristim al nece ni to da redirektuje odmah bez upozorenja :S tj bez te stranice

Neka pomoc?
[ bzelenkapic @ 28.10.2010. 14:11 ] @
Probaj na sledeci nacin

Code:

        SSLCertificateFile /root/asset.crt
        SSLCertificateKeyFile /root/asset.key

        RewriteEngine On
        RewriteCond %{SERVER_PORT} !=443
        RewriteRule ^(.*) https://%{SERVER_NAME}%{REQUEST_URI}


Ti radis redirekciju sa kodom 301.

Citat:

The code "301" is interpreted as "moved permanently". After the code, the URL of the missing or renamed page is noted, followed by a space, then followed by the new location or file name.


I jedan off-topic savet. Opciju FollowSymLinks koristi samo u slucaju krajnje nuzde. Dacu ti skolski primer.

Code:

ln -s / /var/www/html/link


I evo situacije kako mozes da iskompromitujes tvoj server. Preko pretrazivaca gadjaj link.

Code:
http://www.sajt.com/link/etc/passwd
[ squirll @ 28.10.2010. 15:20 ] @
probao sam i to ... dobijam Loop ...
Nesto sto nisam napomenuo a mozda je vazno .... ovo kucam u httpd.conf-u jer htaccess u root-u sajta nece da ucita....
Druga stvar podelio sam na virtual host :80 i virtual host :443
I u oba slucajeva dobijam loop...


za Symlinks nisam znao .. hvala na savetu ;)
[ bzelenkapic @ 28.10.2010. 16:18 ] @
Posalji konfiguraciju virtualnih hostova u redosledu u kom ih Apache iscitava.
[ squirll @ 28.10.2010. 17:41 ] @
Code:


<VirtualHost *:80>
    ServerName www.sajt.com
    DocumentRoot /www/sajt/http_root
        SSLCertificateFile /root/asset.crt
        SSLCertificateKeyFile /root/asset.key
        RewriteEngine On

        RewriteCond %{SERVER_PORT} !=443
        RewriteRule ^(.*) https://%{SERVER_NAME}%{REQUEST_URI}

RewriteRule ^/(.*).html$ /show_static.php?q=$1 [L]
#  AllowOverride all
# <IfModule mod_suphp.c>
     #   suPHP_UserGroup nobody nobody
    # </ IfModule>
</VirtualHost>

<VirtualHost *:443>
    ServerName www.sajt.com
    DocumentRoot /www/sajt/http_root
        SSLEngine On
        SSLCertificateFile /root/asset.crt
        SSLCertificateKeyFile /root/asset.key
        RewriteEngine On

        #RewriteCond %{SERVER_PORT} !=443
        #RewriteRule ^(.*) https://%{SERVER_NAME}%{REQUEST_URI}

#RewriteRule ^/news.html http://www.sajt.com/aboutus.html [R]

RewriteRule ^/(.*).html$ /show_static.php?q=$1 [L]

#  AllowOverride all
# <IfModule mod_suphp.c>
     #   suPHP_UserGroup nobody nobody
    # </ IfModule>
</VirtualHost>



Ovako mi stoji u konfigu....Inace se dva dana sa ovim bahcem i sve zive primere sa googla sam uradio ali jok..ili loop ili 301....
[ bzelenkapic @ 29.10.2010. 08:35 ] @
Preciziraj sta zelis da postignes i definisi jedan test case tako da moze da se isprati kako dolazi do petlje.
[ squirll @ 29.10.2010. 11:57 ] @
Ovako ...
Ja bih zeleo da *.php stranice sve idu preko https-a , a *.html da ide preko http-a .... to sam probao i dobijam loop...
U najgorem slucaju bih zeleo da sav saobracaj ide preko httpS-a, kad to uradim onda se nista ne desava...

Nisam strucan u ovome pa ako moze pomoc, kako da odradim test case da ispratim petlju ?
[ bzelenkapic @ 29.10.2010. 13:03 ] @
Code:

Listen x.x.x.x:80
Listen x.x.x.x:443

NameVirtualHost x.x.x.x:80
NameVirtualHost x.x.x.x:443

<VirtualHost x.x.x.x:80>
  ServerName www.sajt.com
  DocumentRoot /www/sajt/http_root

  RewriteEngine On
  # Ako naleti na .php prebaci na https
  RewriteRule ^(.*)\.php(.*)$ https://%{SERVER_NAME}%{REQUEST_URI}
</VirtualHost>

<VirtualHost x.x.x.x:443>
  ServerName www.sajt.com
  DocumentRoot /www/sajt/https_root

  SSLEngine On
  SSLCertificateFile /root/asset.crt
  SSLCertificateKeyFile /root/asset.key
  SSLCipherSuite  ALL:!ADH: !EXPORT56:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
</VirtualHost>


Nije testirano :) ali probaj. Umesto x.x.x.x stavi tvoju IP adresu.

[ squirll @ 29.10.2010. 14:34 ] @
problem nastaje kad sam ja na 443 portu i kliknem na php stranicu on dobija loop ... + kad me prebacuje dobijam ponovo Found page :S
[ bzelenkapic @ 29.10.2010. 15:54 ] @
Sad sam i ja zbunjen jer u konfiguraciji koju sam ti poslao nema redirekcije kad se uleti u SSL sesiju pa samim tim ni uslova za petlju. Da li si postavio konfiguraciju koju sam ti poslao? Da li si siguran da nije u pitanju neki aplikativni problem? Da li mozes nesto da zakljucis iz logova?

[Ovu poruku je menjao bzelenkapic dana 30.10.2010. u 12:04 GMT+1]