How to install mod_cloudflare for easyapache 4 - apache

I am trying to install mod_cloudflare for Apache using easyapache 4 on cPanel Server. I am running CentOS 7.2.
I have installed mod_cloudflare for EasyApache4 following the instructions under Option 2 here. After running the installer it said "Done. Please restart EasyApache 4". I then went into WHM -> EasyApache 4 and tried to find the server module, but it is not to be found. I clicked the "run system update" button and tried again, to no avail. Is there an easyapache service that needs to be restarted via the command line?
I am not a hosting provider so I have not tried the Cloudflare plugin for CPanel.
* Edit 4/9/2019 *
Changing accepted answer to EasyCo's, as the original solution no longer works.

Figured I'd throw my solution into the mix using Centos 6.9 with WHM/cPanel.
bash <(curl -s https://raw.githubusercontent.com/cloudflare/mod_cloudflare/master/EasyApache/installer.sh)
wget https://raw.githubusercontent.com/cloudflare/mod_cloudflare/master/mod_cloudflare.c
yum install ea-apache24-devel
apxs -a -i -c mod_cloudflare.c
rm /etc/apache2/conf.modules.d/mod_cloudflare.conf
service httpd restart
What's happening?
We're using the cPanel installer.sh as suggested by Cloudflare but the compiled mod_cloudflare.so throws an error if you then run service httpd restart. Lets fix this.
Download the source mod_cloudflare file.
Ensure we have the correct EasyApache4 developer tools to build the mod_cloudflare module.
Build and install extension module.
Remove the new mod_cloudfare.conf file since we prefer the one that was generated and installed in step 1.
Restart apache.
Note: The mod_cloudflare module will not show in EasyApache4. You can see it's enabled by running httpd -M | grep cloudflare and you should see something like cloudflare_module (shared).
References:
https://www.cloudflare.com/technical-resources/
https://community.cloudflare.com/t/help-installing-mod-cloudflare/1747/12
http://www.marathon-studios.com/blog/issues-installing-mod_cloudflare-on-centos-7/
https://forums.cpanel.net/threads/install-httpd-devel.594631/#post-2405975

I found a solution that worked perfectly.
This github project installs the module and adds it into EasyApache so that future rebuilds keep the module active. This was the only solution I found that actually works for EasyApache 4. Everything else seems to be for EasyApache 3.
CloudFlare was not much help with this either, as they had suggested I contact my hosting provider for assistance.

I know this is a bit old now, but it's the first answer that shows up in google.
The official cloudflare answer does work, it just doesn't show up in the EA4 list of modules. However it is installed and working.

Just for others like me that reached here recently, mod_cloudflare module is deprecated and there is a native module for apache [mod_remoteip]. I can see it in EasyApache (apache module section). Also There is a manual here to install & config :
https://support.cloudflare.com/hc/en-us/articles/200170786-Restoring-original-visitor-IPs
with this module you can see Client IP through
$_SERVER['REMOTE_ADDR']
And there is no need to
$_SERVER['HTTP_CF_CONNECTING_IP']

Instructions for installing mod_cloudflare on cPanel with EasyApache4 can be found here:
https://support.cloudflare.com/hc/en-us/articles/206175737-How-do-I-restore-original-visitor-IP-with-EasyApache-cPanel-
bash <(curl -s https://raw.githubusercontent.com/cloudflare/mod_cloudflare/master/EasyApache/installer.sh)

Related

Install Phalcon on RHEL 7

I'm trying to install Phalcon on my RHEL 7 VM. I downloaded files and folders from GitHub and place them on my VM via WinSCP in /opt/ (using remi repo or git clone from VM is blocked)
When I move into /opt/phalcon/build/ and try to sudo ./install, I got a notice that PHP 5 is no longer supported, currently on my Red Hat, I have PHP 7.3.11 version running (checked using php -v and config page).
I installed things like php-devel or gcc.
I have rh-php73-php installed and running on my VM
Maybe someone can help me, because I have no idea how to fix it.
I have rh-php73-php installed and running on my VM
Sorry, but phalcon extension package doesn't exist for this PHP stack.
Using the full php stack from "remi-php73" repository or php73 SCL from "remi-safe" will give you "php-phalcon4" package with latest version of this extension.
using remi repo or git clone from VM is blocked
Use a proxy, or download packages and install them manually.
Tips: test installation from another computer, connected to internet, to get the full package list. You can even retrieve them later from /var/cache/yum (using keepcache=1 in yum.conf)
For memory, for a proper installation, follow the Wizard instructions

Installing mod_ext_filter on Apache 2.4.7 running on Centos 6

My hosting provider's Centos machine doesn't have Apache's 2.4.7's mod_ext_filter installed. I have been waiting a few days for them to install it, but I'm not confident that it's going to happen any time soon. So... I'd like to try to install the mod myself.
I have SSH access to the box, am root, and can do sudo/yum, etc. as needed. I tried a simple yum install mod_ext_filter in the hopes that it would work, but since mod_ext_filter is not a package, it "does nothing."
So, what's the easiest way for me to install the mod_ext_filter(.so) so that I can use the filter from Apache?
Thanks,
John
It turns out that my hosting provider, Liquid Web, needed to recompile Apache from source, and needed to include the mod_ext_filter.c file in the compilation. Once they did this, I was able to implement the filter pretty easily.

change server selection after installing phpmyadmin

After reading a bit I installed phpmyadmin on an Ubuntu server (14.04) with
sudo apt-get install phpmyadmin
In the installation configuration screens I was asked whether I wanted to use apache2 or lighttpd servers. I selected lighttpd and the installation went on smoothly. I noticed that it still (aparently) installed apache2 server.
Now, reading more on the topic, I feel more confortable if I could use phpmyadmin on apache2 server instead of on lighttpd. Is there a way to change this selection now, without uninstalling and reinstalling again?
There are two possibilities about being prompted for a webserver to use; before apt-get downloads any files it resolves conflicts and installs dependencies -- if you don't have a webserver installed it will prompt you to install one (or do so automatically). The other time it asks you about which webserver to use is after downloading and during configuration; if you have more than one webserver installed, you're prompted for which you want to work with phpMyAdmin. You can pick more than one here, by the way.
To configure phpMyAdmin to work with Apache instead, you can use:
sudo dpkg-reconfigure -plow phpmyadmin

Apache Web Development on Cygwin

I'm trying to get an Apache server running on my Cygwin setup to follow the Java Ranch Cattle Drive tutorials online (basically, to learn Java EE web page development that uses a MySQL back end.)
I used the Cygwin Setup program to install httpd (which is how I installed most other dev tools I use on cygwin) and it says install complete, yet when I run 'httpd' it cannot find the command. It also appears the expected install directory (/usr/local/apache...) doesn't exist.
Does anyone have any experience using this setup, and if so, you could walk me through the initial steps of getting the server up and running and getting a browser to display the server's default page?
To keep answers focused, I didn't want to discus the drawbacks of running Apache on a Windows system - this is just for learning purposes. Thanks in advance.
Looking at the Cygwin Package Listing for httpd, you can see that the executable is installed under /usr/sbin.
So, if /usr/sbin is not on your PATH (it isn't on mine, not by default anyhow), you would actually run:
/usr/sbin/httpd
And btw, if you would like to list the files installed for a certain package, you can use cygcheck:
cygcheck -l httpd
cygrunsrv -I Apache -p /usr/sbin/httpd -a "-X"
This will solve the problem. This assumes you already have cyrunsrv set up. The reason httpd fails with cygrunsrv if you leave out the -X is that the process disconnects from the terminal and cygrunsrv considers that a failure. The -X option for httpd is the debug or terminal mode.
I couldn't find any detailed information on how to get Apache working on Cygwin, so here it is if someone's interested:
Install the httpd-* and httpd-mod_* packages you need. Note that the packages named "Apache" are deprecated. You need the ones named "httpd" (which are actually Apache).
Install cygrunsrv (normally this is a default Cygwin package)
Run /usr/bin/cygserver-config as admin. This is needed because Apache requires an IPC server running.
Open services.msc, then go to the CYGWIN Cygserver. Right-click on it and start it. If you don't do this, you'll probably get errors like "AH00023: Couldn't create the proxy mutex".
Finally, start Apache by running /usr/sbin/apachectl restart
Config is in /etc/httpd/.
Some information about running Apache on Cygwin:
http://httpd.apache.org/docs/1.3/cygwin.html
http://www.issociate.de/board/goto/895433/apache2_does_not_start_in_cygwin.html
http://www.cygwin.com/ml/cygwin-apps/2005-02/msg00085.html
Personally, I would recommend installing WAMPServer or other WAMP stack and do it that way. There is no difference, except that you'll need to control Apache through Windows commands [net start, net stop], not Cygwin's ones.

Uninstalling user install of Apache on Mac Mini

I got a MacMini at work for development, and was asked to follow this article to install SVN on it: http://developer.apple.com/tools/subversionxcode.html The article assumes that only Apache 1.3 was installed and asks the reader to install Apache 2. I've since learned that the MacMini has Apache 2 already installed. So basically I've installed two versions of Apache 2. The preinstalled one has access to PHP, so I wanted to remove my version, but I'm unsure of how.
My version has httpd.conf stored at:
/usr/local/apache2/conf/httpd.conf
And the preinstalled version has it stored at:
/etc/apache2/httpd.conf, which I believe is an alias for /private/etc/apache2/httpd.conf
Thanks for your help
Delete the Apache2 folder from the location you specified, /Library/StartupItems/Apache2, and /Library/Receipts/Apache2.pkg according to:
http://www.glinder.com/bulkfiles/UNIXInfo/Apache2_Install_Guide.pdf