Re: Fwd: php not reading file properly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ashley Sheridan wrote:

>As it's the Apache access log that you are trying to read in, are you sure
that Apache is     >not in the process of writing to it as you are
attempting to read from it? That might explain   >why it seems to be empty,
although I would have thought it would just append the data to >the end of
the file, rather than rewriting the whole thing.

I dunno. Like I said, I can read it thru the terminal. Apache is still
running then.

As for Micah's response, that function won't work either.

On Wed, Aug 20, 2008 at 7:34 PM, Micah Gersten <micah@xxxxxxxxxxx> wrote:

> If the directory above it doesn't have execute privileges, it won't be
> able to read it either.
> Also, why not use the PHP5 function file_get_contents()?
>
> Thank you,
> Micah Gersten
> onShore Networks
> Internal Developer
> http://www.onshore.com
>
>
>
> sean greenslade wrote:
> > Thanks for the advice. I changed the perms to 777 and changed the user
> and
> > group to apache, but it still won't open.
> >
> >
> > On Wed, Aug 20, 2008 at 3:35 PM, Robbert van Andel <
> swimmer1974@xxxxxxxxx>wrote:
> >
> >
> >> Does the user your PHP instance runs as have access to the file?  It's
> >> possible that it runs under a different users depending on if you're
> running
> >> the script on the terminal or in a web browser.  The function fopen will
> >> return false if the file fails to open.  Find out if $fh is equal to
> false.
> >> While you're debugging, you might consider changing the display errors
> >> setting to see what warning fopen generates if the file fails to open.
>  From
> >> http://us.php.net/fopen
> >>  Errors/Exceptions
> >>
> >> If the open fails, the function an error of level *E_WARNING* is
> >> generated. You may use @<
> http://us.php.net/manual/en/language.operators.errorcontrol.php>to
> suppress this warning.
> >>
> >>
> >> On Wed, Aug 20, 2008 at 12:15 PM, sean greenslade <
> zootboysean@xxxxxxxxx>wrote:
> >>
> >>
> >>> I have this snippet of code that is supposed to read the apache access
> log
> >>> and display it:
> >>> <?php
> >>>    $myFile = "/var/log/httpd/access_log";
> >>>    $fh = fopen($myFile, 'r');
> >>>    $theData = fread($fh, filesize($myFile));
> >>>    fclose($fh);
> >>>    echo
> >>>    "This weeks apache log (clears every sunday morning):".
> >>>    substr($theData,0,2000);
> >>> ?>
> >>> For some reason, it displays the logs when I run the php file thru
> >>> terminal:
> >>> php -f /web/apache.php
> >>>
> >>> but not when I access it thru the web. when I browse to it, it just
> >>> displays
> >>> the static text ("This weeks apache log (clears every sunday
> morning):"),
> >>> not the log text.
> >>>
> >>> Very confused,
> >>> zootboy
> >>>
> >>>
> >>
> >
> >
> >
>



-- 
Feh.

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux