FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
Tjenare!
Gick över från Apache - Nginx på dev servern idag man har lite problem, det enda jag vill göra är att ta bort .php från URL:er och ersätta med en / i slutet av URL:er. Just nu fungerar allt som körs på index.php bra, bara till att gå till www.example.com så körs ju indexfilen som vanligt, men går man till www.example.com/about/ (www.example.com/about.php) så får jag bara meddelandet: "File not found.", direktnavigering till: www.example.com/about.php fungerar fint. Men ja, Nginx verkar inte skriva om URL:erna korrekt så då hittar den inte PHP filen, hur löser jag detta? Har testat varenda svar som hittades via Google sökningar men nepp, inget fungerar, ibland verkar det som om svaren utgår från att man kör något MVC liknande (som tex WordPress) som alltid utgår från att man kör från index.php och ibland kanske index.php{query_string}, det gör jag inte i just detta fallet, vill bara att den skall ta bort .php filändelsen. Min Nginx config fil ser ut såhär: PHP-kod:
PHP-kod:
Några förslag? ![]() Senast redigerad av JesperA den 2012-11-04 klockan 15:24 |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Mycket flitig postare
|
Anledning till att saker och ting inte läses in korrekt är för att URL är felaktig. Den försöker alltså läsa från example.com/about/style.css, istället från rooten. Lägg till ett "/" i början när du ska länka till saker, så läser den från rooten.
<img src="images/123.jpg"> - FEL <img src="/images/123.png"> - RÄTT Är sidan byggd på mycket PHP och använder include mycket, så behöver du göra en ändring även här. include("database.php"); - FEL include($_SERVER['DOCUMENT_ROOT'] . '/database.php'); - RÄTT |
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Medlem
|
Japp precis, men inte det som är problemet riktigt, inte ens www.example.com/bildmapp/bildfil1.jpg fungerar, så jag har inga problem med själva söklänkarna utan det är något strul med Nginx config filen
OBS: Bilderna fungerar (www.example.com/bildmapp/bildfil1.jpg) om jag kör med konfig filen exakt som i mitt första exempel, byter jag som sagt ut location / med det som är i mitt andra exempel så fungerar inte ens direktnavigering till bilderna. |
||
![]() |
![]() |
![]() |
#4 | |||
|
||||
Mycket flitig postare
|
Har du read access till mappen/filerna i fråga?
|
|||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Medlem
|
Japp, det tror jag iaf: http://cl.ly/image/0q3m3W2T0s3L
Fungerar ju att navigera till bilderna ibland beroende på Nginx config av ovanstående man väljer |
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Administratör
|
Citat:
include($_SERVER['DOCUMENT_ROOT'] . '/database.php'); - FEL include(__DIR__ . '/../database.php'); - RÄTT Då är din applikation transportabel och delar kan användas som bibliotek i andra applikationer så länge katalogstruktur behålls.
__________________
eldefors.com - Personlig (teknik)-blogg |
||
![]() |
![]() |
![]() |
#7 | |||
|
||||
Mycket flitig postare
|
Kan du lägga upp URL när /about/ fungerar men ej bilder m.m
|
|||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Medlem
|
Tyvärr har jag ingen URL just nu då jag kör den lokalt och använder mobilen som modem och begränsad bandbredd.
Iaf, min errorlogg: 2012/11/04 17:05:30 [error] 10243#0: *25 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 192.168.1.70, server: module, request: "GET /avatars/4.jpg HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "192.168.1.76:51001" Ska den verkligen försöka hämta avatar bilden genom fastcgi och fpm.sock? |
||
![]() |
![]() |
![]() |
#9 | |||
|
||||
Mycket flitig postare
|
Citat:
Senast redigerad av yakuzaemme den 2012-11-04 klockan 17:24 |
|||
![]() |
![]() |
![]() |
#10 | ||
|
|||
Medlem
|
Just nu kör jag Ubuntu 12.04 i en VM med VMWARE, värd OS:et är OS X (har dock samma problem i min dedikerade Ubuntu burk)
Hmm testat nu, bilderna fungerar om dom ligger i root, såfort jag slänger in dom i en mapp i root så fungerar dom inte. |
||
![]() |
![]() |
Svara |
|
|