2015-07-22 17 views
9

È possibile ottenere il percorso absolut nel mio file ".htaccess"?Percorso assoluto Hacc.

Sto usando questo per caricare init.php in ogni file.

php_value auto_prepend_file /Applications/XAMPP/xamppfiles/htdocs/init.php 

C'è un modo per cui non devo scrivere il percorso assoluto?

Ti piace questa, se init.php è nella stessa categoria del file .htaccess:

php_value auto_prepend_file [ABSOLUTE_PATH_TO_HTACCESS]/init.php 

e se questo è possibile, Come faccio a scrivere questo, ma ancora tornare una directory (Dal init.php è al di fuori public_html, dove è .htaccess).

Grazie in anticipo.

+0

Hai provato 'auto_prepend_file php_value/init.php'? – StephenKing

+0

Dato che 'init.php' è incluso in ogni file, i file nelle sottodirectory non possono trovarlo se il percorso non è assoluto. – Jacob

+2

Non è un duplicato di "[File php con preprazione automatica utilizzando htaccess relativo al file htaccess] (https://stackoverflow.com/questions/9045445/auto-prepened-php-file-using-htaccess-relative-to- htaccess-file) "? – Siguza

risposta

1

Supponendo che la risposta aggiornata la risposta accettata here opere, e che la struttura delle directory relativa è come lei:

[docroot] 
| 
\- init.php 
| 
\- public_html 
    | 
    \- .htaccess 
    | 
    \- index.php 

allora si dovrebbe essere in grado di salire una directory del file init.php si desidera anteporre la direttiva

php_value auto_prepend_file ./../init.php 

nel file .htaccess.

0

L'ho risolto usando PHP per creare il file .htaccess.

Creare un file htaccess.php con tutte le cose che si desidera inserire nel file htaccess.

php_value auto_prepend_file [INIT]init.php 

quindi creare un file vuoto .htaccess con le autorizzazioni corrette.

Quindi eseguire la classe seguente e sostituire [INIT] con il percorso assoluto.

Ecco la classe per generare il file .htaccess:.

<?php 

    class Install { 

     public static function htaccess(){ 

      $file = ".htaccess"; 

      ob_start(); 

       include "htaccess.php"; 
       $htaccess = ob_get_contents(); 

      ob_end_clean(); 

      $absolute = __DIR__; 
      $init = $absolute; 

      $init = str_replace("public_html", "", $init); 

      $htaccess = str_replace("[INIT]", $init, $htaccess); 

      $opFile = fopen($file, 'w'); 

      file_put_contents($file, $htaccess, FILE_APPEND); 

      fclose($opFile); 

     } 

    } 

?> 
Problemi correlati