Hi,
we don't have a fixed schedule for
release.
2.4.41 has just been released a few
weeks ago.
Unless a serious regression is spotted
or some security issues discovered, you should not expect a new
release before, let say, 3-4 months.
If you want to have an idea of the "release rate", have a look at
[1].
CJ
Le 05/09/2019 à 00:41, Heather Lotz a
écrit :
That is fantastic news! Thank-you very much for figuring it out
and fixing it. Assuming the change gets approved, approximately
when will the next release become available?
Hi,
The issue has been tracked down
and has been fixed on trunk in r1866418 [1].
It will be proposed for
backport and should be in next release if the change is
approved.
Best regards,
CJ
Le 01/09/2019 à 01:11, Heather
Lotz a écrit :
Hello - Just wondering if there has been any progress made
on getting <IfFile> to work for Windows.
Seeking clarification - does this mean you were able
to reproduce the issue?
Hi,
CJ
Le 23/08/2019 à
23:53, Heather Lotz a écrit :
Right, I have zero knowledge of C. That would be super
if you would be able to replicate the issue in
a Windows environment. Admittedly, I don't
know what a Windows binary is.
I ran some more tests, based on your suggestion,
and also found a couple of links about DOS
device paths that proved to be helpful*.
Here are the results -
For each of these Apache would not start:
<IfFile "\\.\Z:">
<IfFile "\\.\Z:\">
<IfFile
"\\.\Z:\files\development\ApacheSmokeSignal.txt">
<IfFile "\\.\C:">
For each of these Apache would start whether Z:
was connected to the PC or not. However, the
code within the <IfFile> tags never
executed because localhost:8080/miscellaneous/
always returned a 404 error in the browser.
<IfFile "\\?\Z:">
<IfFile "\\?\Z:\">
<IfFile
"\\?\Z:\files\development\ApacheSmokeSignal.txt">
<IfFile "\\?\C:">
<IfFile "\\?\C:\">
<IfFile
"\\?\C:\Users\heather.lotz\Documents\_user_files\text.txt">
*For reference, here are links to the useful
pages about DOS device paths -
Hi,
Ok, if you have little knowledge of C, no
need to try to apply the patch.
You would need a compiler, some libraries,
set-up the environment, configure, build,
install...
I'll install a Windows binaries and try your
configuration. Should be easy to reproduce.
The syntax you have used is correct
(Z:/bla/bla/). AFAIK, the internals of httpd
(the APR library to be precise) already
translate the '/' (Linux style) in '\'
(Windows style).
My proposal was just based on information
taken from Microsoft doc (search for "When
opening a volume or removable media drive
(for example, a floppy disk drive or flash
memory thumb drive), ..." near the end of
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createfilew).
Because, at some point, on Windows,
'CreteFileW()' is called.
Just 2 words on the patch.
When a configuration file is parsed, when a
'<IfFile ...>' directive is found, all
lines up to the corresponding
</Iffile> are discarded.
To do that the function, we call
'apr_stat()' which gives information on a
file (size, name, dates...). In the specific
case, no information is requested. This is
unusual. Usually we ask for size only, or
"standard" information.
The patch just changes the requirement from
"do not return anything" to "return size
file only".
However, asking for no information *should
still work*. The function should tell us
that the file exists or not, without any
details on the file itself, if found.
My point is that using it this way, is
unusual. This could hide a corner case
(read: bug in the APR underlying library)
I've had in my todo list for a long time to
setup a test environment for Windows. It
could be a good occasion to do it. Or you
could try with the supplier of a Windows
binary (Steffen from Apache lounge is
following closely the project and could be
of help). Reproduce the issue with their
binaries and report to issue to them as
well.
Finally, I put back the mailing list in
copy, should anyone have an opinion on it
CJ
Le
23/08/2019 à 14:12, Heather Lotz a écrit :
Also, it would be helpful to know the
expected syntax to use in <IfFile>
once the patch is applied.
For instance, does the patch expect
<IfFile
"/z/files/development/ApacheSmokeSignal.txt">
and the purpose of the
patch is to execute the code within the
<IfFile> tags?
Or does the patch
expect
<IfFile
"Z:/files/development/ApacheSmokeSignal.txt">
and the patch will allow
the code within the <IfFile> tags
to execute as it would on a Linux
machine?
I opened the patch file in Notepad++ but
don't understand the contents.
Hello Christophe - Thank-you for the
reply. Can you please provide some
instructions about how to apply the
patch?
Heather
Le
23/08/2019 à 05:04, Heather Lotz a
écrit :
After some more testing, it
seems that this syntax -
<IfFile
"Z:/files/development/ApacheSmokeSignal.txt">
is the root cause of Apache not
starting when the external
storage device, mapped to Z:, is
detached from the Windows 10 PC.
I tested these variants
individually, which are more
*nix like -
<IfFile
"Z/files/development/ApacheSmokeSignal.txt">
<IfFile
"/Z/files/development/ApacheSmokeSignal.txt">
<IfFile
"/z/files/development/ApacheSmokeSignal.txt">
and the behavior is Apache
starts whether or not Z: is
attached to the PC, so that is a
step in the right direction.
However, the code within the
<IfFile> tags never
executes because when
localhost:8080/miscellaneous/ is
entered in a browser it always
returns a 404 error.
Another test was this -
<IfFile
"/c/Users/heather.lotz/Documents/_user_files/test.txt">
which points to an existing file
which is not stored on Z:. The
behavior here was the same as
that of the 3 *nix like tests.
Apache starts whether or not Z:
is attached to the PC but code
within the <IfFile> tags
is not executed because localhost:8080/miscellaneous/
returns a 404 error.
Does this constitute a bug of
<IfFile> when used on a
Windows OS?
A new file was created on Z:
for the sole purpose of
having a designated file for
Apache to seek.
The file is called Z:\files\development\ApacheSmokeSignal.txt.
Here is what
httpd-vhosts.conf looks like
now:
<IfFile
"Z:/files/development/ApacheSmokeSignal.txt">
<VirtualHost
*:8080>
DocumentRoot
"Z:/files/xampp/htdocs"
<Directory
"Z:/files/xampp/htdocs">
Options Indexes
Require all granted
</Directory>
</VirtualHost>
</IfFile>
With this update in place,
Apache starts fine when Z:
is attached to the PC.
However, when Z: is not
attached to the PC Apache
does not start and these
lines appear in the XAMPP
Control Panel console:
9:30:24 PM [Apache]
Attempting to start
Apache app...
9:30:24 PM [Apache]
Status change detected:
running
9:30:26 PM [Apache]
Status change detected:
stopped
9:30:26 PM [Apache]
Error: Apache shutdown
unexpectedly.
9:30:26 PM [Apache]
This may be due to a
blocked port, missing
dependencies,
9:30:26 PM [Apache]
improper privileges, a
crash, or a shutdown by
another method.
9:30:26 PM [Apache]
Press the Logs button to
view error logs and check
9:30:26 PM [Apache]
the Windows Event Viewer
for more clues
9:30:26 PM [Apache]
If you need more help,
copy and post this
9:30:26 PM [Apache]
entire log window on the
forums
There are no entries in
error.log with a Wed Aug 21
21:30 or later timestamp.
Is the syntax incorrect?
Note that Apache is
installed in this location
on the PC in
question: C:\xampp\apache.
On
Wed, Aug 21, 2019 at
8:21 PM Heather Lotz
<knot22@xxxxxxxxxxx>
wrote:
>
> Greetings,
>
> In my
development
environment on a
Windows 10 PC I have
added the following
to Apache's
configuration files
-
>
> To httpd.conf:
> Listen 8080
>
> To
httpd-vhosts.conf:
> <VirtualHost
*:8080>
>
DocumentRoot
"Z:/files/xampp/htdocs"
> <Directory
"Z:/files/xampp/htdocs">
> Options
Indexes
> Require all
granted
>
</Directory>
>
</VirtualHost>
>
> Note that Z: is
mapped to an
external storage
device.
>
> With this
setup, Apache
successfully
accesses C: on port
80 and Z: on port
8080. However, if
the external storage
device is not
attached to the
computer, Apache
will not start. Is
there a way to check
if Z: is present,
and only create the
virtual host if that
device is plugged in
so that Apache
always starts? If
so, how can this be
achieved?
Try <IfFile> https://httpd.apache.org/docs/2.4/mod/core.html#iffile
--
Eric Covener
covener@xxxxxxxxx
---------------------------------------------------------------------
To unsubscribe,
e-mail:
users-unsubscribe@xxxxxxxxxxxxxxxx
For additional
commands, e-mail:
users-help@xxxxxxxxxxxxxxxx
Hi,
would you have the opportunity to
test the attached patch?
The 0 passed to apr_stat looks
spurious to me. (but should work)
(Pure speculation)
Also, based on Microsoft doc,
could you also try:
<IfFile "\\.\Z:">
...
and
<IfFile "\\.\Z:\">
...
CJ
|