Reklama
Nepřihlášený uživatel | Zaregistrovat se
 

Téma:

Počítače a Internet

Spravuje:

Medousek

Může vás zajímat



Reklama




Mastodont  
Ano, mělo by to fungovat, ale u mě na W7 to nechodí. Zkoušeno na verzích 2.4.29 a 2.4.37 (php 7.0 a 7.3). Ciboha. Na 2.2 to bylo myslím v pořádku.
U mne to funguje. Vytvořil jsem si na serveru adresář test, do něj hodil index.php:

<?php
echo "Hi there: ".$_GET['p'];
?>

A soubor .htaccess:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?p=$1 [QSA,L]

http://server/test/abcd vypíše Hi there: abcd

Dále vytvořím soubor x.txt a do něj dám text Hello World!

Když zavolám http://server/test/x.txt - vypíše Hello World!
 
Mastodont  
Chlapi, co přesně v Apachi 2.4 znamená zápis

RewriteCond %{REQUEST_FILENAME} !-f

Vždycky jsem si myslel, že to znamená "pokud hledaný soubor neexistuje, pokračuj na RewriteRule". Proč ale teda tady existující obrázky/styly nevidím

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/(.*)$ /index.php [QSA,L]

a tady je vidím?

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .*\.(jpg|jpeg|gif|png|bmp|css|js)$ - [L]
RewriteRule ^/(.*)$ /index.php [QSA,L]

Ten třetí řádek přece nic nepřepisuje ...

 
eso Můj syn má advokáta! 
Docela problém může být, pokud používáš nějaké knihovny a chceš je povýšit.

Ale není zas tak velký problém mít na jednom serveru PHP5.6 i PHP 7.x - serverhostingy to běžně nabízejí.
Jako zaklad se da vzit tohle: Migrating from PHP 5.6.x to PHP 7.0.x. Z tech webu co jsem delal nejcasteji clovek samozrejme narazi na absenci mysql a mssql extension.
Dal tam jsou zmeny v nekterych sifrovacich funkcich (nejsou podporovany nektere starsi sifrovaci metody - ale to bylo tusim uz u prechodu 5.4 na 5.6), zmena salt u password_hash()...
Pokud chces mit malo pri prace tak je nejjednodussi si udelat soubor s nahradou mysql_* funkci a ten naincludovat do webu. Pokud to chces udelat ciste tak prochazet skripty a najdi a nahrad mysql_* za mysqli_* (+ doplneni identifikatoru spojeni k databazi)
spic už jen wtf 
zachovám vlákno:
https://github.com/mattbit/mysql-compat
5 -> 7 na projektu, kde jsem to řešil, bez problémů, pár drobných úprav, jako názvy konstruktorů
von_Zeppelin Oliheň Beznaděje  pclib php framework
Zkušenosti z migrace php 5 -> 7 by mě docela zajímaly. Taky máme letité aplikace. Ocenil bych nějaký report třeba v klubu php.
 
padlock Korupce jest základem státu.  
ok, ozvu se do vzkazniku
To se tezko odhaduje bez blizsich informaci. Pokud chce nejake php skripty modernizovat tak muzes jit na php 5.6 nebo 7.x. Problem je ze 5.6 je uz mrtva vec a kdyz ho nasadis tak jsi v temer stejne situaci. Pokud ty skripty chces predelat na php 7.x tak budes muset pravdepodobne resit absenci puvodniho mysql a jeho nahradu za mysqli (jednodussi cesta) nebo PDO. A je otazka jestli tam nemas jeste nejakou jinou specialitku (treba ze skripty koukaji do nejake MSSQL databaze), nebo netrvaji na nejake historicke konfiguraci php, ktera uz neni dostupna. Par webu jsem uz takhle predelaval a pokud autor nebyl prase tak se to da delat docela rychle. Posli pripadne vzkaz pokud budes chtit nejake blizsi info
padlock Korupce jest základem státu.  
dodám, že nejmenovaná identita se do toho už pustila za cenu v jednotkách tisíc Kč, ale teď mi nezvedá telefon a neodpovída na maily. Nicméně ten polotovar lze použít.
padlock Korupce jest základem státu.  
Doufám, že tu nebudu příliš offtopic. Máme letitý web server s pravěkým php, cca 15-20 virtual hosts a potřeboval bych to přiblížit do současnosti. Tedy se zachováním původní funkcionality vytvořit kopletní web (Linux+Apache+PHP), který nebude plný pět let známých zranitelností. Může někdo odhadnout, kolik by taková legrace mohla řádově stát?
 
Slo by to obejit pomoci presmerovani tech https domen. treba takto (ignoruj zavorky):
(VirtualHost *:443)
ServerName domena-bez-https.cz
ServerAlias www.domena-bez-https.cz
Redirect / http://www.default-domena.cz/
(/VirtualHost)
spic už jen wtf 
Já bych preferoval, kdyby to šlo bez certifikátu, ale místo "Varování: možné riziko nebezpečí" by se zobrazilo 404 "odpal, tahle doména na https nejede". Jenže když certifikát odeberu, Apache nestartuje.
violetelephant グッバイ、ミスターティーポット 
to co pozadujes nejde, protoze FQDN v certifikatu musi odpovidat FQDN v URL, pripadne muzes pouzit wildcard certifikat a pak staci kdyz sedi domena. nicmene od doby co mame SNI a SAN, tak lze vystavit certifikat, ktery ma v SAN vsechny potrebna jmena (bezne se dneska pouziva na sluzbach, ktere nabizi nejaky publikacni system pod vlastni domenou uzivatele).

na vygenerovani certifikatu bych asi doporucil pouzit letsencrypt tools, protoze pokud si budes chtit zaridit certifikat pro vic domen, bude to stat dost penez.
eso Můj syn má advokáta! 
Když to čtu podrobněji, tak ty spíš chceš certifikát pro více domén, což tak není problém.

https://www.cloudways.com/blog/lets-encrypt-ssl-certificate-on-multiple-domains/

Chtít certifikát, u kterého není třeba určovat pro jaké domény je moc smysl nemá, protože certifikát nejen zajišťuje šifrování, ale i identifikaci pravosti konkrétního serveru.
eso Můj syn má advokáta! 
Podle mě je k tomu třeba SSL certifikát určený pro ip adresu a ne pro doménu.
spic už jen wtf 
Jak se správně konfiguruje default virtualhost pro SSL?
Chtěl bych, aby se pro libovolnou doménu, nasměrovanou na můj server, která nemá svůj certifikát zobrazila korektně běžná default stránka bez nutnosti použít certifikát pro jinou.
Jestli teda dává ten dotaz smysl :)
 
violetelephant グッバイ、ミスターティーポット 
musi byt na tom stroji, kde k nemu mas privatni klic. cili je na tobe, kde vsude to nakopirujes a nakonfigurujes.
Dík moc
muze byt na ruznych mistech