This plugin ensures that your Drupal website runs optimally when using Incapsula
By using this plugin you will have no change to your originating IPs when using Incapsula. Incapsula acts as a reverse proxy and all incoming connections to your website first pass through one of Incapsula's servers. This plugin will ensure that you continue to see the real originating IP of your website visitors.
The plugin is **highly recommended** for Joomla users using the Incapsula service.
HOW IT WORKS:
* The plugin sets the value of $_SERVER['REMOTE_ADDR'] according to the client IP value reported by the Incapsula proxy.
ABOUT INCAPSULA:
Incapsula gives any website the security and performance previously only available to the website elite. Through a simple DNS settings change, website traffic is seamlessly routed through Incapsula's global network of high-powered servers. Incoming traffic is intelligently profiled, in real-time, blocking even the latest web threats from sophisticated SQL injection attacks to malicious bots and intruding comment spammers. Meanwhile, outgoing traffic is accelerated and optimized for faster load times, keeping welcome visitors speeding through.
| Comment | File | Size | Author |
|---|---|---|---|
| #13 | report_incapsula.txt | 3.2 KB | misc |
| 1228632.zip | 16.75 KB | Incapsula |
Comments
Comment #1
berkas1 commentedYou have to post link to your sandbox project ;)
Comment #2
Incapsula commentedLink to the sandbox project:
http://drupal.org/sandbox/Incapsula/1228632
Comment #3
berkas1 commentedGit Repository in your sandbox is empty - did you push you local files to drupal.org git server?
Comment #4
Incapsula commentedForgot to push...
It should be there now.
Comment #5
berkas1 commentedok now, marking as needs review
Comment #6
Incapsula commentedAny update?
Comment #7
gregglesThe project page mentions Joomla - good to fix soon ;)
The project title is a bit long. I suggest just "Incapsula" as the title and leave the marketing language for the body of the page. The same change seems reasonable for the project name in the .info file and for the filenames. It seems odd to have incapsula___uncompromising_security_and_maximum_performance.module instead of just incapsula.module
readme.txt should be README.txt It also seems to contain information relevant for WordPress and Joomla mixed in, please clear that up.
Your database queries should use the placeholder system instead of string concatenation. See http://api.drupal.org for details.
The code doesn't follow the Drupal coding standards. Please read http://drupal.org/coding-standards and see what you can fix.
These are all pretty minor things - once fixed I think it's ready to go.
Comment #8
mikerjohnson commentedLooking forward to this being ready for 7.x and hopefully soon. Many spammers attempting to register for our site, but the logs all show they come from Incapsula servers at this point.
Comment #9
misc commented@incapsula has been contacted to ask if the application is abandoned.
http://drupal.org/node/894256
Comment #10
Incapsula commentedMarking as needs review...
Comment #11
Incapsula commentedI made the part of the changes requested, other I am not sure what the mean.
Whoever reviews, can you please be more specific?
Thanks!
Comment #12
gregglesI can explain what I meant if you let me know which parts didn't make sense. Back to needs work for that.
Comment #13
misc commentedDid an automatic review, you have som coding standards issues, se the attached file, and feel free to ask if something is unclear.
Comment #14
Incapsula commentedThanks.
I made the required fixes. Can you please review?
Thanks.
Comment #15
Incapsula commentedMarking as needs review (see last comment)...
Comment #16
prashantgoel commentedfirst of all please create a version specific branch and also remove all the files from your master branch.
And please visit http://ventral.org/pareview/httpgitdrupalorgsandboxincapsula1228632git for the list of errors that are being generated
Comment #17
Incapsula commentedThank you for your review.
We created a branch for the version. We would like to keep master for future development.
Regarding errors, all errors were fixed except for:
50 | ERROR | Use the function ip_address() instead of $_SERVER['REMOTE_ADDR']
However, we use $_SERVER['REMOTE_ADDR'] in propose as we assign a new IP to this variable, we cannot use ip_address().
Please review.
Thanks.
Comment #18
Incapsula commentedWaiting for review...
Comment #19
patrickd commentedSorry for the delay, as there are currently hundreds of application needing review and only a few reviewers, everything takes a while.
You are not working correctly with branches in git, therefore you wont be able to create a release later. The most direct documentation on this is Moving from a master branch to a version branch. For additional resources please see the documentation about release naming conventions and creating a branch in git.
As installation and usage instructions are quite important for us to review, please take a moment to make your project page follow the tips for a great project page. Also make sure README.txt your follows the guidelines for in-project documentation.
We do really need more hands in the application queue and highly recommend to get a review bonus so we can come back to your application sooner.
Comment #20
Incapsula commentedThanks.
I went through your comments and fixed the branches. Could not find step 2 in (http://drupal.org/node/1127732) maybe because we are still in sandbox.
How can we proceed in releasing this small module?
Thanks!
Comment #21
eiriksmHello!
These are just minor issues, and I will come back and mark as RTBC when these are fixed:
- There are some coding style errors: http://ventral.org/pareview/httpgitdrupalorgsandboxincapsula1228632git
- The README is written almost not for Drupal. The words "Plugins" and "v. 3.0" are probably not related to this module.
Both of these should be easy to fix. Thanks for your contribution!
Comment #22
ben coleman commentedI'll echo greggles' comments about the project title. Shorten it to 'Incapsula' and leave the marketing verbiage to the project description.
Normally you should have a branch called '6.x-1.x' for the Drupal 6-compatible version, and a branch called '7.x-1.x' for the Drupal 7-compatible version.
Don't let the detailedness of the review keep you from finishing this process. Note that this process is intended to ensure that a developer is skilled enough and familiar enough with Drupal coding standards and conventions to be trusted to create full projects on their own. If all you care about is getting this one project to full status, it may seem like overkill. Don't let that keep you from pushing this until it gets done.
Comment #23
klausiClosing due to lack of activity. Feel free to reopen if you are still working on this application.
Comment #24
mr.j commentedA warning for anyone who finds and wants to use this module. It doesn't work as it tries to update the header after the bootstrap phase has already called ip_address(). The first time that function is called it holds the IP in a static variable that remains unchanged for the rest of the request. So the module is too late to do anything.
It is far easier to just set the ip address in your settings.php as that way it will be run first and you won't need to install a module. Assuming you don't want to maintain a potentially massive list of Incapsula IP addresses in the reverse proxy array, just stick this in settings.php near the reverse proxy section: