.htaccess - PHP auto_prepend_file in CGI-MODE without modifying php.ini -
i need auto_prepend_file
on requests folder using .htaccess
. problem is, php runs under cgi-mode, , cant modify other php file or php.ini. tat's why i'm not using php_value auto_prepend_file "/testing.php"
on .htaccess
file.
is there way of doing under specifications?
assuming mod_rewrite enabled on server, can following.
in .htaccess add following:
rewriteengine on rewritecond %{request_uri} !/testing\.php rewriterule ^(.*)$ /testing.php?url=$1 [l]
in testing.php, whatever want do. @ end of file, this:
$file = $_get['url']; if( file_points_to_sensible_location( $file ) && file_exists( $file ) ) { require( $file ); }
file_exist
existing function. file_points_to_sensible_location(...)
have write. if mess up, might able execute or dump files don't want expose.
edit: can prevent happening requests adding additional conditions .htaccess
file. example: rewritecond %{request_uri} !\.(jpg|jpeg|png|gif|css|js|unicorn)$
prevent testing.php being executed on files ending extension. condition rewritecond %{request_uri} \.php$
let work on requests ending .php.
to make work wordpress, instead of require( $file )
can use require( "index.php" )
. since url same, wordpress still work.
to make work other rewriterules, you'll need move rewritelogic testing.php
. change $file
contain whatever should contain after rewrite , include/require that. remove corresponding rules .htaccess
.
Comments
Post a Comment