Opened 8 years ago

Closed 5 years ago

#50965 closed enhancement (fixed)

Move apache24-devel to apache2

Reported by: grigutis@… Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: BjarneDMat, pixilla (Bradley Giesbrecht), Schamschula (Marius Schamschula), khepler, hostep (Pieter Hoste), dClauzel (Damien Clauzel), chrisminett (Chris Minett), hotsupport, alexwhitewhale (Alexander Romanovich), jimjag (Jim Jagielski), MacTrophy
Port: apache24-devel apache2

Description

According to the Apache2 HOWTO, "the apache24-devel port will eventually replace the contents of the apache2 port at which time the apache24-devel port will be retired."

Since OS X has been using apache 2.4 for about a year and a half now (since 10.10 was released), would it be possible to start the process of making 2.4 the default for the apache2 port or moving apache24-devel out of development status?

I'm not sure how much work this involves though. According to the HOWTO, it sounds like a lot of other ports would have to be touched.

Change History (21)

comment:1 Changed 8 years ago by mf2k (Frank Schima)

Cc: ryandesign@… removed
Owner: changed from macports-tickets@… to ryandesign@…
Port: apache2 added
Type: requestenhancement
Version: 2.3.4

Note that a "request" ticket type is only for requesting a new port.

comment:2 Changed 8 years ago by Schamschula (Marius Schamschula)

Cc: mschamschula@… added

Cc Me!

comment:3 Changed 8 years ago by khepler

Cc: khepler@… added

Cc Me!

comment:4 Changed 8 years ago by hostep (Pieter Hoste)

I'm looking for a way to run HTTP/2 on my local machine using Apache. Switching to Apache 2.4 with the mod_http2 module installed would accomplish this.
I work on projects which request a whole bunch (sometimes more then 50) small javascript files (only in developer mode of our projects), and switching to HTTP/2 would significantly improve the speed of our development setup.

So this another upvote to try to get Apache 2.4 replacing Apache 2.2 in Macports.

Thanks!

comment:5 Changed 8 years ago by hostep (Pieter Hoste)

Cc: hoste.pieter@… added

Cc Me!

comment:6 Changed 8 years ago by dClauzel (Damien Clauzel)

Cc: Damien@… added

Cc Me!

Having apache 2.4 and php7 as default versions would be nice. It is time to move on.

Last edited 8 years ago by dClauzel (Damien Clauzel) (previous) (diff)

comment:7 Changed 7 years ago by chrisminett (Chris Minett)

Cc: chrisminett added

comment:8 Changed 7 years ago by MacTrophy

Cc: MacTrophy added

comment:9 Changed 7 years ago by hotsupport

Cc: hotsupport added

comment:10 Changed 7 years ago by alexwhitewhale (Alexander Romanovich)

Cc: alexwhitewhale added

comment:11 Changed 7 years ago by jimjag (Jim Jagielski)

Cc: jimjag added

comment:12 Changed 7 years ago by MacTrophy

Cc: MacTrophy removed

comment:13 Changed 7 years ago by MacTrophy

Cc: MacTrophy added

comment:14 Changed 7 years ago by Schamschula (Marius Schamschula)

I'm currently working on cleaning up apache.

I've marked the apache port (1.3.x) obsolete. I intend to do the same for apache20

The question is what to do about the current apache2:

a) rename it to apache22 b) rename it to apache-legacy c) mark it as obsolete

My current thought is option (a). That requires a bit of additional effort for apache modules, i.e variants supporting apache 2.2.x and 2.4.x.

comment:15 in reply to:  14 ; Changed 7 years ago by danielluke (Daniel J. Luke)

Replying to Schamschula:

a) rename it to apache22 My current thought is option (a). That requires a bit of additional effort for apache modules, i.e variants supporting apache 2.2.x and 2.4.x.

That's consistent with what we've done with other ports. We should focus on having the module ports work with 2.4 and optionally provide a 2.2 variant. I suspect that very few people actually need apache 2.2 instead of 2.4 at this point.

comment:16 in reply to:  15 Changed 7 years ago by Schamschula (Marius Schamschula)

Replying to danielluke:

Replying to Schamschula:

a) rename it to apache22 My current thought is option (a). That requires a bit of additional effort for apache modules, i.e variants supporting apache 2.2.x and 2.4.x.

That's consistent with what we've done with other ports. We should focus on having the module ports work with 2.4 and optionally provide a 2.2 variant. I suspect that very few people actually need apache 2.2 instead of 2.4 at this point.

That's what I'm currently working on. I've updated about half the modules to apache 2.4.x, and will add back apache22 variants based on the current version, where applicable. A number of modules are incompatible with apache24, and will be replaced by new ports, while others will go away entirely.

Last edited 7 years ago by Schamschula (Marius Schamschula) (previous) (diff)

comment:17 Changed 7 years ago by Schamschula (Marius Schamschula)

Committed: [12fedbd20c5bd98b3dc91437384886d24ede3f52/macports-ports]

I'll leaving this ticket open in case something breaks.

Last edited 7 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:18 Changed 7 years ago by MacTrophy

Thank you for 2.4 !

Some notes that might help other users and/or package maintainers.

First keep in mind that the configuration formats for 2.4 have changed a lot since 2.2, especially with configurations like Deny, Allow, Satisfy and Require. https://httpd.apache.org/docs/current/upgrading.html helped us a lot 1-2 years ago when we moved our Debian servers from Apache 2.2 to 2.4.

The files seems to have been standardized in term of locations (at least for my installations)
Old -> New
/opt/local/apache2/bin/apachectl -> /opt/local/sbin/apachectl
/opt/local/apache2/conf -> /opt/local/etc/apache2
/opt/local/apache2/logs -> /opt/local/var/log/apache2

I am not certain why it's this way but the PHP modules config files (5.6 and 7.0 at least) are now in /opt/local/etc/apache/extra . I expected those in /opt/local/etc/apache2/extra may be it's for backward/forward compatibility with other Apache versions?

The httpd daemon is running as (user and group) daemon:daemon, I think it was www:www

If you enable ssl_module you will probably also need socache_shmcb_module.

The TLSv1 is NOT disabled by default. It's recommended disabled since the end of 2016 in the /opt/local/etc/apache2/extra/httpd-ssl.conf. Consider adding -TLSv1 at the end of the lines for SSLProtocol and SSLProxyProtocol.

The default configuration of /opt/local/etc/apache2/extra/httpd-userdir.conf is not configured by default for OS X standards, you will need to change UserDir public_html value to UserDir Sites and <Directory "/home/*/public_html"> to <Directory "/Users/*/Sites">.

comment:19 Changed 7 years ago by Schamschula (Marius Schamschula)

In 3668d218da11c67b03aa982bcabb1067a16ca563/macports-ports:

php-apache2handler: fix confdir path, no longer violate mtree

See: #50965

comment:20 in reply to:  18 Changed 7 years ago by Schamschula (Marius Schamschula)

Replying to MacTrophy:

Thank you for 2.4 !

Some notes that might help other users and/or package maintainers.

First keep in mind that the configuration formats for 2.4 have changed a lot since 2.2, especially with configurations like Deny, Allow, Satisfy and Require. https://httpd.apache.org/docs/current/upgrading.html helped us a lot 1-2 years ago when we moved our Debian servers from Apache 2.2 to 2.4.

The files seems to have been standardized in term of locations (at least for my installations)
Old -> New
/opt/local/apache2/bin/apachectl -> /opt/local/sbin/apachectl
/opt/local/apache2/conf -> /opt/local/etc/apache2
/opt/local/apache2/logs -> /opt/local/var/log/apache2

I am not certain why it's this way but the PHP modules config files (5.6 and 7.0 at least) are now in /opt/local/etc/apache/extra . I expected those in /opt/local/etc/apache2/extra may be it's for backward/forward compatibility with other Apache versions?

That was a typo. Fixed in [3668d218da11c67b03aa982bcabb1067a16ca563/macports-ports].

The httpd daemon is running as (user and group) daemon:daemon, I think it was www:www

If you enable ssl_module you will probably also need socache_shmcb_module.

The TLSv1 is NOT disabled by default. It's recommended disabled since the end of 2016 in the /opt/local/etc/apache2/extra/httpd-ssl.conf. Consider adding -TLSv1 at the end of the lines for SSLProtocol and SSLProxyProtocol.

The default configuration of /opt/local/etc/apache2/extra/httpd-userdir.conf is not configured by default for OS X standards, you will need to change UserDir public_html value to UserDir Sites and <Directory "/home/*/public_html"> to <Directory "/Users/*/Sites">.

Last edited 7 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:21 in reply to:  17 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed

Replying to Schamschula:

I'll leaving this ticket open in case something breaks.

Time to close this. If there are any problems, please open new tickets.

Note: See TracTickets for help on using tickets.