Block Site A password protected website access blocker and redirector
Support Development
PayPal ● 
Bitcoin Address: bc1qh7juzrxrawpr65elm4qs285m5rdhnhgsn7h2jf
Lightning Address: [email protected]
Your Input Matters
The "Block Site" extension adds an action button to your browser's toolbar section. To restrict user access to a new site, visit the URL once and click the action button. Alternatively, you can navigate to the extension's options page, add the hostname (e.g., or * in the textbox, and hit the "add" button. If you set a master password, it allows access to restricted sites for a defined duration. Furthermore, you can use this extension to redirect a hostname and its arguments to a new destination instead of blocking it. This feature is useful when you want to redirect a search engine to another search engine or a custom-blocking page. You can also ask the extension to auto-close popup windows immediately or after a period.



  1. What is "Block Site" extension and how does it work?

    This extension keeps an eye on top-level hostname accesses and matches them against a custom blocking list created by the user. If a hostname is on the list, the extension blocks access just before the browser sends the top hostname request to the server. This functionality helps prevent access to a hostname that is not intended to be accessed from your IP address or when you want to block popup websites from opening new tabs that could inject malicious scripts into your browser.

    Additionally, you can use the extension to redirect URLs. To use this feature, add a hostname to the blocking list from the options page and enter the FULL URL of the destination domain in the redirect box (including schemes like ""). The extension extracts the arguments of the original URL and passes them to the destination URL. This functionality, for instance, helps to redirect search results from to Add "*" as a new hostname and enter "" in the destination field to achieve the redirecting. Don't forget to save your changes. Now, when you search for something in the address bar, you will receive results from (Assuming that Google is your default search engine).

    Note: If you want to ensure that the blocked remote servers do not receive any connection requests from your browser, uncheck the "Display title of blocked hostnames" option on the options page. With this option checked, the extension sends a request to the server to retrieve the actual page title. This option is only useful for distinguishing blocked tabs if there is no restriction on sending or receiving data from the blocked hostnames.

  2. What is the master password and how can I set it?

    When you set the master password from the options page, you can access restricted URLs for a defined duration. Changing any options, such as removing a hostname from the blocking list or adjusting the time interval for temporary accessing hostnames, will require the master password. Setting the master password prevents other users from modifying the extension's preferences on the options page.

    It's important to note that with the master password set, you can temporarily unblock a hostname by entering the password in the box displayed on the block page. This grants access to the hostname for a predetermined time (usually 1 minute by default).

  3. How can I block all the sub-domains of a single domain (like,, ...)?

    Use wildcard in the place of the subdomain. For instance, to block all the Google subdomains use "*". Here is the list of valid and invalid wildcard matchings:

    Pattern What it does Examples of matching URLs */foo* Matches any host, as long as the path starts with /foo
    **bar Matches any URL that uses the https scheme, is on a host (such as,, or, as long as the path starts with /foo and ends with bar
    Bad pattern Why it's bad *foo/bar '*' in the host can be followed only by a '.' or '/' foo.*.bar/baz If '*' is in the host, it must be the first character

  4. Why is the destination redirection feature disabled when a wildcard is used in a matching pattern?

    The reason for disabling the destination redirection feature is the performance drawback of wildcard matching. The process of wildcard matching is computationally expensive, which is why this extension does not allow it. Instead, you can add multiple rules without using a wildcard to achieve the same matching capability without sacrificing performance.

  5. What's new in this version?

    Please check the Logs section.

  6. Is it possible to change the theme of the blocked pages in the extension?

    Yes, starting from version 0.1.1, you can select either a dark or a light theme for the blocked pages. You can find the theme selector button at the top right corner of the blocked pages. Once you select the theme, it will persist even after you restart your browser. If you want to apply your styling, use the options page. There is a section called "Custom CSS" where the user can modify the styling of elements on the blocked page. For instance, you can hide a message or change the font or even the colors.

  7. Is it possible to block websites for a specific period only?

    Yes, starting from version 0.1.3, there is a new section on the options page allowing you to specify the period and days during which the blocker will be active. By filling out this section, you can block the list of websites for a defined period only. If you need to unblock a website for a particular day, you can remove that day from the list of blocked days.

  8. Is it possible to use this extension to allow only a selected few hostnames while blocking all others?

    Yes, the extension offers a reverse mode that you can activate from the options page. When this mode is active, only the hostnames listed in the allowlist will be able to pass through the blockage, and all other hostnames will be blocked.

  9. How can I prevent this extension from being removed or disabled from the Firefox browser?

    Create a policies.json file with the following content. This file sits into a directory called distribution within the Firefox installation directory. You can use it to control how users have access to the browser features. For more info visit

      "policies": {
        "Extensions": {
          "Locked":  ["{54e2eb33-18eb-46ad-a4e4-1329c29f6e17}"]
    Mac OS: place the file inside /Applications/

    For Chrome browser see the Set app and extension policies documentation. For Edge browser read Microsoft Edge - Policies.

  10. I have a big list of hostnames to be blocked. Can I import them instead of manually adding new rules?

    Create a text file anywhere on your computer. Let's call it block.txt. The content of this file is a line-separated list of hostnames to be blocked. Basically, each hostname is placed in a new line. If you would like to add comments, use a new line and start the line with "#" character. The extension simply ignores these lines. If you need to enable redirection, add the complete path to the redirected page after the hostname to be blocked. Note that after using the import button, the list will be added to the rules, but still it is not being applied. You need to press the "Save" button for the changes to actually apply. If for any reason, you would prefer to start over, simply close the options page and reopen it. See the sample below:

    # Line-separated list of hostnames to be blocked. Lines start with "#" are ignored
    # hostname to be blocked URL to be redirected to (optional)
    In this example, is being redirected to and is being blocked without any redirection.

  11. Is there a way to temporarily disable the blocking without using the scheduling feature? For instance, if I need to access all websites for a short period.

    Yes, starting from version 0.2.3, you can use the right-click context menu on the extension's toolbar button to pause the blocking for a specific duration. If you have set a master password for the extension, you will need to unblock it first. Once the pause is no longer needed, you can use the same menu to resume normal behavior.

  12. Can I set up specific blocking schedules for different domains?

    Starting from version 0.2.3, you can define regular expression rules in the options page to specify a specific schedule for domains that match the rule. If a rule is defined, the extension applies the schedule only to URLs that match the rule. If there is no rule defined, it follows the global scheduling. To set up one with a rule, enter the rule in the designated field and wait for the extension to load the information. To delete a schedule with a rule, enter the rule and wait for the extension to load the corresponding schedule, then delete the time section and keep the rule to indicate that you want to delete the rule. You can also edit the settings as a JSON object using a text editor and then load them back into the extension.

    Here is a minimal example to block on Mondays between 07:00 AM to 08:00 AM. Note that the "" hostname is listed on the blocked list as well as it matches to a regular expression in the scheduling list.

      "blocked": [
      "schedules": {
        "google\\.com": {
          "times": {
            "Mon": [
                "end": "08:00",
                "start": "07:00"

  13. Can I use regular expressions to block websites instead of wildcard matching?

    Yes, starting from version 0.2.3, you can define a regular expression rule in the "Block a new hostname" field by adding the R: keyword at the beginning of your rule. By doing this, the extension recognizes that you are using a regular expression instead of a wildcard, and applies your rule accordingly. Regular expressions are a powerful tool to create complex patterns for blocking specific domains or keywords.

  14. Can this extension automatically close a popup tab that opens periodically?

    Yes, starting from version 0.2.3, the extension provides a specific redirecting keyword, close, which immediately closes any tab that matches a blocking rule. By using this keyword as the redirection destination, the extension can automatically close any popup tab that matches the blocking rule.

  15. Is it possible to use this extension on a corporation to block sites on multiple machines?

    As of version 0.3.2, this extension supports managed storage to import settings from the managed preference. An admin user can configure all instances of this extension by setting a managed storage. The PLIST for reading preferences looks like this example. Use your browser managed storage documentation to see how to set up the managed storage.

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple/DTD PLIST 1.0//EN" "">
    <plist version="1.0">
      <string>single-line valid JSON string containing all the preferences (use the output of the export button + shift key to generate this string)</string>

    By default, this key is set to false, which causes the extension to overwrite all the preferences only once. If the value of this key is set to true, on each restart the extension overwrites all the preference from the provided JSON string. Note that in case the JSON string is updated by the admin (contains a new GUID), all the preferences will be overwritten once even if the "" key is set to false. Also, note that you can set a password while configuring the extension once and this password will prevent all the client machines from altering the preferences later (all clients only access to the HASH of the password so it is safe to set the password on the machine before generating the JSON file).

    On the Firefox browser, you need to create a JSON file called {54e2eb33-18eb-46ad-a4e4-1329c29f6e17}.json and placed it inside the ManagedStorage directory. Read more about how to configure Firefox to use the managed storage here. Here is a sample JSON file to block Wikipedia:

      "name": "{54e2eb33-18eb-46ad-a4e4-1329c29f6e17}",
      "description": "managed storage for Block Site extension",
      "type": "storage",
      "data": {
        "json": "{\"blocked\":[\"\",\"*\"],\"last-update\":1608787025230,\"\":true,\"guid\":\"5f956061-006d-4713-8e33-a2adb7136902\"}"
    Make sure your JSON file is valid by testing it here (Change the mode to "Code" on the toolbar, then paste the JSON string)

  16. How can I block all websites except one particular site during a specific hour of the day?

    Add a general blocking rule that matches every hostname, such as :///* to block all websites. This rule ensures that all hostnames are blocked or considered for blocking by the extension. To unblock a single hostname during a specific hour of the day, add a scheduling rule for that hostname. Before applying the blocking, the extension checks the schedule and if it doesn't match, the blocking is aborted.

    For example, if you want to block all websites except between and every day, you can add a schedule with the regular expression rule and set the "from" time to and the "end" time to for all days.

  17. Can I block an entire website but allow a specific page on that website using this extension?

    Yes, you can use this extension to block an entire website and then whitelist a specific page on that website by adding a regular expression rule with a schedule. First, you can browse the website and use the extension's action button to add the blocking rules. Then, you can go to the options page and add a regular expression rule that matches the entire website and the specific page you want to whitelist. For example, if you want to whitelist a page on, you can add a regular expression like Next, you can set a schedule for this rule, specifying the time when the page will be unblocked. For instance, you can set the start time to and the end time to , so that the page is blocked for 1 minute a day and unblocked the rest of the time. Alternatively, you can create a regular expression rule that matches the entire website but excludes the specific page you want to whitelist.

  18. Is there a way to prevent a user from bypassing the blocking by deleting the internal storage of the browser?

    One way to prevent a user from deleting the internal storage of the browser and bypassing the blocking is by setting the profile directory to read-only. This can be achieved by creating a new user account on your operating system with write access to the profile directory and logging into the read-only user account to run the browser. On Linux, you can use the command "su rw_user -c chrome" to run the browser as the user with write access. This ensures that the user can access the browser and its settings, but cannot modify or delete the profile directory.

  19. Can I schedule blocking based on a different time zone than my browser's? I have set my browser to use GMT for privacy reasons, but I want to block sites based on my local time zone.

    Starting from version 0.4.1, you can set a custom offset in minutes in the "Schedule Blocking" section of the options page. This allows you to schedule blocking based on a time zone different from your browser's. The options page for your convenience also displays the calculated time based on the offset you have set.

Matched Content



Please keep reviews clean, avoid improper language, and do not post any personal information. Also, please consider sharing your valuable input on the official store.

What's new in this version

Change Logs:
    Last 10 commits on GitHub
    Hover over a node to see more details

    Need help?

    If you have questions about the extension, or ideas on how to improve it, please post them on the  support site. Don't forget to search through the bug reports first as most likely your question/bug report has already been reported or there is a workaround posted for it.

    Open IssuesIssuesForks

    Editorial Review

    If you feel a website contains such material that needs not to be viewed by your children, younger siblings or any other person in your family, there is an easy way to get that particular website blocked on their system. You can find numerous extensions in the Chrome Web Store’s extensions category to block access to certain websites but not all of them are reliable. Hence, finding the right one can prove to be a daunting task. Block Site extension is one of these extensions that can help you to block access to websites on a system. Wondering whether this extension should be download on your system or not? This review will help you to take the best decision.

    Block Site, a password-protected website blocker extension, aims to make it easier for you to block the access to certain websites. It offers a simple process to block a website. All you have to do is to press the block site icon that will appear on your toolbar once you have downloaded the extension and access to that website will be restricted. Blocking website is not the only feature that Block Site extension boasts of. It can also redirect users to any other website. However, this is a bit complicated process for a beginner as you will have to toggle the extension’s setting and enter the new destination there.

    This extension is perfect to be installed on systems used by kids as they wouldn’t be able to access websites, which contain objectionable materials that you do not want them to view. Whenever they will try to access the blocked website, Restricted Access message will be displayed on their screen.

    A prominent feature that sets Block Site apart from other extensions is “master password”. This extension allows the users to set a master password, which they can use to access the blocked website. The master password also comes with enhanced security features. For example, if a wrong password has been entered multiple times within a minute (you can set manual time here), the access to that website will be blocked. Thus, even if someone is trying to guess the password, they wouldn’t be able to view that particular website as its access will be blocked after wrong attempts.

    What’s Good about this extension?

    Permissions are explained

    tabsTo block a top-level hostname or to redirect a blocked URL when the master password is entered
    storageTo store internal preferences of the extension like the blocked list or redirection map
    <all_urls>To be able to monitor all the top level requests no matter what the hostname is
    webRequestthe main module to observe browser's network activity
    notificationsTo notify the user when an error occurs
    webRequestBlockingComplimentary component to the 'webRequest' API

    Recent Blog Posts