All Projects → spatie → mixed-content-scanner-cli

spatie / mixed-content-scanner-cli

Licence: MIT license
A cli tool to check your site for mixed content

Programming Languages

PHP
23972 projects - #3 most used programming language
Blade
752 projects
hack
652 projects

Projects that are alternatives of or similar to mixed-content-scanner-cli

Pric
Simple zero-config tool to create Private Certificate Authority & issue locally-trusted development server certificates with any domain names you'd like. SSL certificates for development purposes.
Stars: ✭ 87 (+6.1%)
Mutual labels:  ssl, developer-tools
localhostd
Run and serve your web apps in .test domains on your develop machine.
Stars: ✭ 27 (-67.07%)
Mutual labels:  ssl, developer-tools
laminas-developer-tools
Module for developer and debug tools for use with laminas-mvc applications.
Stars: ✭ 19 (-76.83%)
Mutual labels:  developer-tools
hubi
Humanitarian ubiquitous language helper
Stars: ✭ 17 (-79.27%)
Mutual labels:  developer-tools
portal
An api-driven, in-kernel layer 2/3 load balancer.
Stars: ✭ 101 (+23.17%)
Mutual labels:  developer-tools
devbuddy
Setup your projects in a consistent way. Help other devs onboard easily!
Stars: ✭ 49 (-40.24%)
Mutual labels:  developer-tools
wordup-code
Visual Studio Code extension for wordup that makes it easy to develop, manage and export WordPress plugins or themes.
Stars: ✭ 12 (-85.37%)
Mutual labels:  developer-tools
conan-openssl
[OBSOLETE] The recipe is now in https://github.com/conan-io/conan-center-index
Stars: ✭ 25 (-69.51%)
Mutual labels:  ssl
Stubmatic
Mock HTTP calls without coding. Designed specially for testing and testers.
Stars: ✭ 118 (+43.9%)
Mutual labels:  ssl
android-trinity
android-trinity is tiny proactive framework with much of the scaffolding code required to start a new Android Application.
Stars: ✭ 44 (-46.34%)
Mutual labels:  developer-tools
dotfiles
My personal app/env configs and dotfiles.
Stars: ✭ 27 (-67.07%)
Mutual labels:  developer-tools
nginx-session-ticket-key-rotation
Nginx session ticket key rotation program for secure rotation of TLS session ticket keys and sharing in server clusters.
Stars: ✭ 23 (-71.95%)
Mutual labels:  ssl
node-grpc-ssl
Basic example gRPC protocol with NodeJS + SSL + Docker
Stars: ✭ 40 (-51.22%)
Mutual labels:  ssl
legesher
Because language shouldn't be a barrier to code
Stars: ✭ 29 (-64.63%)
Mutual labels:  developer-tools
nanobox-rails
Quickly set up a Ruby on Rails app on Nanobox, the ideal platform for developers. With Nanobox, Rails app developers can set up instant, isolated development environments that can be shared among team members. Rails apps created using Nanobox can be automatically deployed to AWS, Azure, Google Cloud, and other cloud hosts without the need for de…
Stars: ✭ 19 (-76.83%)
Mutual labels:  developer-tools
celery-connectors
Want to handle 100,000 messages in 90 seconds? Celery and Kombu are that awesome - Multiple publisher-subscriber demos for processing json or pickled messages from Redis, RabbitMQ or AWS SQS. Includes Kombu message processors using native Producer and Consumer classes as well as ConsumerProducerMixin workers for relay publish-hook or caching
Stars: ✭ 37 (-54.88%)
Mutual labels:  ssl
ethernal-cli
CLI to sync transactions and Truffle artifacts with Ethernal.
Stars: ✭ 14 (-82.93%)
Mutual labels:  developer-tools
diyca
Do-It-Yourself Certificate Authority
Stars: ✭ 18 (-78.05%)
Mutual labels:  ssl
mediastack
All in one Docker Compose media server
Stars: ✭ 42 (-48.78%)
Mutual labels:  ssl
AutoBrew
AutoBrew: Homebrew deployments made easy
Stars: ✭ 71 (-13.41%)
Mutual labels:  developer-tools

A CLI tool to check sites for mixed content

Latest Version on Packagist Build Status SensioLabsInsight Quality Score StyleCI Total Downloads

This repo contains a tool called mixed-content-scanner that can help you find pieces of mixed content on your site. This is how you can use it:

mixed-content-scanner scan https://spatie.be

And of course our company site reports no mixed content.

spatie

Here's an example of a local test server that does contain some mixed content:

mixed

Support us

We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.

We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.

Installation

You can install the package via composer:

composer global require spatie/mixed-content-scanner-cli

How it works under the hood

When scanning a site, the tool will crawl every page. On all html retrieved, these elements and attributes will be checked:

  • audio: src
  • embed: src
  • form: action
  • link: href
  • iframe: src
  • img: src, srcset
  • object: data
  • param: value
  • script: src
  • source: src, srcset
  • video: src

If any of those attributes start with http:// the element will be regarded as mixed content.

The tool does not scan linked .css or .js files. Inline <script> or <style> are not taken into consideration.

Usage

You can scan a site by using the scan command followed by the url

mixed-content-scanner scan https://example.com

Options

SSL verification

You might want to check your site for mixed content before actually launching it. It's quite common your site doesn't have an ssl certificate installed yet at that point. That's why by default the tool will not verify ssl certificates.

If you want to turn on ssl verification just use the verify-ssl option

mixed-content-scanner scan https://self-signed.badssl.com/ --verify-ssl

That examples will result in non responding urls because the host does not have a valid ssl certificate

Filtering and ignoring urls

You can filter which urls are going to be crawled by passing regex to the filter and ignore options.

In this example we are only going to crawl pages starting with /en.

mixed-content-scanner scan https://spatie.be --filter="^\/en"

You can use multiple filters:

mixed-content-scanner scan https://spatie.be --filter="^\/en" --filter="^\/nl"

You can also ignore certain urls. Here we are going to ignore all url's that contain the word opensource.

mixed-content-scanner scan https://spatie.be --ignore="opensource"

Of course you can also combine filters and ignores:

mixed-content-scanner scan https://spatie.be --filter="^\/en" --ignore="opensource"

Ignoring robots

By default, the crawler will respect robots data. You can ignore them though with the --ignore-robots option.

mixed-content-scanner scan https://example.com --ignore-robots

Custom User agent

By default, the crawler uses the underlying guzzle client for the user agent. You can override this value with the --user-agent option.

mixed-content-scanner scan https://example.com --user-agent='MyCustomCrawler'

Changelog

Please see CHANGELOG for more information what has changed recently.

Testing

composer test

Contributing

Please see CONTRIBUTING for details.

Security

If you've found a bug regarding security please mail [email protected] instead of using the issue tracker.

Postcardware

You're free to use this package, but if it makes it to your production environment we highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using.

Our address is: Spatie, Kruikstraat 22, 2018 Antwerp, Belgium.

We publish all received postcards on our company website.

Credits

The scanner is inspired by mixed-content-scan by Bram Van Damme. Parts of his readme and code were used.

License

The MIT License (MIT). Please see License File for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].