Jump to content
php.lv forumi

Atgriezt pilno saiti uz projekta mapi


Jackal

Recommended Posts

Ir saite: http://localhost/project/test/1234

project ir reāla mape kurā atrodas visi projekta faili. test un 1234 ir parametri.

 

Tā kā projekts pagaidām atrodas uz testa servera, tad visi projekta faili neatrodas uz http://localhost, bet gan apakšmapē

Pārceļot uz īsto serveri, faili vairs neatradīsies apakšmapē.

 

Problēma tāda, ka nezinu kā dinamiski atgriezt pilno saiti.

Vajadzētu, kaut kā dinamiski atgriezt http://localhost/project, lai pārceļot uz īstā servera nebūtu jāmaina kods. Nav jau daudz jāmaina, bet tomēr gribētu, lai tas nebūtu jādara.

 

Vai ir kāda iespēja to izdarīt?

Link to comment
Share on other sites

Par virtual hosts ir zināms, bet vai tas ir vienīgais veids kā to panākt?

Vai to nevar panākt tīri ar php kā to var izdarīt ar direktoriju servera pusē - realpath(dirname(__FILE__)) ?

 

Izdomāju risinājumu

 

echo 'http://' . $_SERVER['SERVER_NAME'] . str_replace($_SERVER['QUERY_STRING'], '', $_SERVER['REQUEST_URI']);

Edited by Jackal
Link to comment
Share on other sites

Par šo tēmu arī šeit ir bijušas diskusijas. Labākais variants ir uztaisīt kaut kādu funkciju, piemēram url(), kas no config'a paņem variabli, kurā norādīts path.

define('SITE_PATH', '/project/'); // vai http://localhost/project/ production vidē attiecīgi cits domains/mape

function url($path = ''){
 return SITE_PATH.$path;
}

Šis būs krietni labāks un uzticamāks risinājums.

Link to comment
Share on other sites

Php principā nav nekāda sakara ar to, kā visu redz pārlūks.

Tev problēma ir ar ceļiem php pusē? (include, require utt izmantojot) vai problēma ar webisko pusi? <img src="bildes/kautkas.jpg"/> ?

 

Nodefinē konstanti iekš php, kas norāda projekta pamata ceļu.

 

To dara šādi:

 

ir kaut kāds config fails, kas atrodas pamata mapē.

define("PROJECT_BASE_PATH", dirname(__FILE__) . "/");

 

 

un tad kad kaut ko inklūdo raksta require(PROJECT_BASE_PATH . "files/kautkas.php");

Link to comment
Share on other sites

Es nečakarētos un pievienotu hosts + apačes virtualhosts failā pa ierakstam un visur norādītu absolūtos ceļus...

Tas ir, protams, ja nedomā glabāt divas dažādas lapas uz viena domēna.. tad nāksies Mārča doto variantu izmantot...

Edited by briedis
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...