FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Apache + php + directory browsing + reader for TXT files
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Apache + php + directory browsing + reader for TXT files [message #182753 is a reply to message #182752] Wed, 04 September 2013 14:56 Go to previous messageGo to previous message
Salvatore is currently offline  Salvatore
Messages: 38
Registered: September 2012
Karma:
Member
On 2013-09-04, G. <grumsk(at)grumsk(dot)tz> wrote:
> Hi, I have a bunch of *.txt files. I would like to put them on my server
> (I already have a running apache2 with PHP5 and Mysql) and allow my students
> to browse directories and read the TXT files.
>
> I spent some time yesterday on applying a CSS to apache's "directory browsing"
> ability.
>
> Now, I would like to go a further step: applying a minimal style to my TXT
> documents with a few rules. (font, size, margins, background color, color, etc.)
> and dynamically producing links from my http://... strings.

I believe that this is as simple as creating a file called HEADER.html
(make sure you use uppercase lettersi for the word "HEADER") and include
some <style> tags.

>
> I think it is possible to play with apache redirection settings and PHP
> for dynamically build a *.txt reader. But maybe something has already be
> done which could be a starting point for me.
>
> Are you aware of that?

Yes. Find the option in your Apache configuration file called
"DirectoryIndex" and change it to include index.php. Here's an example:

DirectoryIndex index.html index.htm index.php

This will allow you to write your own version of a directory listing in
PHP. If you don't want to write your own directory listing script,
continue on below...

>
> Two questions:
> * (php related) what resources could I use for my purpose?

I would try using the mod_rewrite module.

> * (for apache wizzards) what would be the best way of handling my *.txt files
> and redirecting to a small php "reader"?

Here's what I came up with:

1. Create a file called "textfile.php". Put code in there that reads
the variable $_REQUEST['file'] and verifies that it doesn't
contain anything nasty. (Basically, verify that it only contains
the characters A-Z, a-z, 0-9, a dash, an underscore, no more than
one dot, and the extension ".txt".) Use that variable to open up a
text file.

2. Add a rewrite rule to the .htaccess file that looks something like
this:

RewriteEngine On
RewriteRule ^/textfiles/([^/]+\.txt)$ /textfile.php?file=$1 [PT]

(This presumes your text files are being hosted in the
subdirectory "/textfiles".)

3. In the file "textfile.php", use the function
"file_read_contents()" to read the contents of the text file.

And, of course, be extra careful when checking the file name so that
people cannot pass a parameter that looks like "file=../../../etc/passwd"
or something like that.

>
> Regards,
>


--
Blah blah bleh...
GCS/CM d(-)@>-- s+:- !a C++$ UBL++++$ L+$ W+++$ w M++ Y++ b++
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: php exec ( ) DO NOT work for relative paths: Help?
Next Topic: [Mac OS X ML] how to install MongoDB driver
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Wed Nov 27 19:59:14 GMT 2024

Total time taken to generate the page: 0.04303 seconds