Really Simple SSL


Really Simple SSL 自動偵測您的設定及配置您的網站以運作 https。為了保持輕重量,選項將被保持在一最小數。整個站將搬到SSL。


在開始前永遠先作備份!若你沒有聲效備份的計劃,最好是有一個! 請看 our recommendations.

Any code suggestions? We’re on GitHub as well!

愛上 Really Simple SSL?

Hopefully this plugin saves you some hours of work. If you want to support the continuing development of this plugin, you might consider buying the premium, which includes
some cool features.


  • The mixed content scan, which shows you what you have to do if you don’t have the secure lock yet
  • 啟動 HTTP 嚴密傳輸安全系統的選項
  • 為 HSTS 預載入列表而佩置你網站的選項
  • Advanced security headers for additional security
  • 後端的混合內容修復器
  • More detailed feedback on the configuration page
  • Certificate expiration check: get an email when your SSL certificate is about to expire
  • 優質支援


  • 這掛件處理多數附有ssl 的Wordpress的問題,就像當你在反向 proxy/loadbalancer 背後,或當沒有適當的標頭可讓WordPress 使用來偵測SSL。
  • 所有新進的請求將導向到https. 預設內部 WordPress 導向,但你也可以用一個.htaccess導向。
  • The siteurl and homeurl are changed to https.
  • Your insecure content is fixed by replacing all http:// URL’s with https://, except hyperlinks to other domains. Dynamically, so no database changes are made (except for the siteurl and homeurl).

Check out other plugins developed by Really Simple Plugins as well: Complianz, Zip Recipes and WP Search Insights.

如果你有任何問題,或建議,請 contact 我。 Really Simple SSL 是由 Really Simple Plugins 所開發.


翻譯很容易被增加入 here 若要翻譯, 我可以將你加入翻譯編輯者以改進翻譯文。


  • 在活化之後,如果SSL被偵測到,您就可以啟動SSL 。
  • 流覽你在設定頁裡的配置
  • 掃瞄混合式內容。



  1. 作備份!
  2. 安裝你的 SSL 認證
  3. 下載這插件
  4. 上載這插件到 wp-content/plugins 目錄,
  5. 請到您 WordPress 管理中的 “plugin”, 然後點選啟動。
  6. 您現將會看到一小指示要求您啟動 SSL. 點取它並重新登入。



若需更多關於導向迴圈,反激化,混合內容,錯誤等等的解說及文件, 請查尋 documentation


在一網站包含約有60.000 字元,由混合内容修護器造成的遅緩大約是0.00188 秒。若這對你太多負荷, 就用手動方式修護混合内容並在設定中将它反激化。

反安裝 Really Simple SSL

這插件在開始作用前會檢查您的認證,但是,比如說,您遷移網站到一非SSL環境,您將在後端被鎖住。若您無法停用,請不要只是移除插件檔案夾去反安裝! 請跟循 instructions.


Most mixed content issues are caused by URL’s in css or js files.
For detailed instructions on how to find mixed content read this article.


若您在您的網站正經歷導向迴圈,請試 instructions.




Does just what it says it does. Been using it for years now.


“Really Simple SSL” 是一個開源的軟體。以下的人對這個外掛作出了貢獻。


Really Simple SSL 外掛目前已有 35 個本地化語言版本。 感謝所有譯者為這個外掛做出的貢獻。

將 Really Simple SSL 外掛本地化為台灣繁體中文版。


任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄



  • Fix: changed multisite SSL activation hook to wp_initialize_site


  • Fix: prefix review notice dismiss to prevent conflicts with other plugins
  • Updated multisite SSL activation hook for new blogs to wp_insert_site
  • Moved notices CSS inline


  • Dismiss review notice now uses get variable to dismiss it


  • Added a notice when using Divi theme with a link to knowledge base instructions
  • Fixed a CSS issue where the active tab in setting didn’t have an active color
  • Added an additional option to dismiss the review notice
  • Removed review notice capability check
  • Fixed a bug on multisite where a plusone was shown when it should only shown on non-multisite
  • Added prefix to uses_elementor() function and added checks if function_exists


  • Fixed a typo in the backup link
  • Added instructions on how to add a free SSL certificate


  • Updated SSL activated notice
  • Updated readme


  • Fixed a bug where the redirect to settings page would abort SSL activation, not writing the wp-config fix on new installs
  • Fixed typo in force-deactivate notice


  • Added redirect to settings page after activating SSL
  • Improved dashboard SSL certificate check by using the is_valid() check from rsssl_certificate instead of relying on site_has_ssl
  • Updated activation notice
  • Updated settings page sidebar styling and links


  • Updated switch_to_blog function in to a backwards compatible version for older WP installations
  • Updated review notice
  • Improved .htaccess not writeable notice for Bitnami installations to show htaccess.conf location
  • Updated green lock to secure lock text
  • Removed border for dashboard sidebar button
  • Activate some security headers by default when pro is enabled


  • Optimized plusone count function
  • Disabled Javascript redirect by default
  • Fixed a bug in the setting highlight function where an undefined setting name could cause a warning


  • Fixed typo in trace_log() function call


  • Improved and added dashboard notices
  • Improved debug logging
  • Added option to dismiss all Really Simple SSL notices
  • Fixed a bug where other plugins buttons had their style reset


  • Added right-to-left text support
  • Show a plusone behind the notice that generated it
  • Added a dismiss text link to dismissible notices
  • Added highlighting to .htaccess redirect option after clicking on dashboard link
  • Added option to dismiss all notices
  • Added site health notice


  • Fix: some single sites setup were having issues with multisite files being included.


  • Fix: error in regex, cause a fatal error in cases where a plus one already was showing in the settings menu


  • Added update counter to Settings/SSL menu item if recommended settings aren’t enabled yet
  • Added WP-CLI support
  • Tweak: made some dashboard items dismissible
  • Tweak: added link on multisite networkwide activation notice to switch function hook to fix conversions hanging on 0%
  • Tweak: required WordPress version now 4.6 because of get_networks() version


  • Fix: fixed a bug where having an open_basedir defined showed PHP warnings when using htaccess.conf


  • Tweak: added support for Bitnami/AWS htaccess.conf file
  • Tweak: multisite blog count now only counts public sites
  • Tweak: changed rewrite rules flush time to 1-5 minutes
  • Tweak: improved multisite site count


  • Tweak: no longer shows notices on Gutenberg edit screens
  • Tweak: updated Google Analytics with link to SSL settings page
  • Fix: multisite blog count now only counts public sites


  • Tweak: added cool checkboxes
  • Tweak: .well-known/acme-challenge/ is excluded from .htaccess https:// redirect
  • Tweak: implemented transients for functions that use curl/wp_remote_get()
  • Tweak: improved mixed content fixer detection notifications
  • Tweak: removed review notice for multisite


  • Fix: Multisite network wide activation/deactivation cron not saving settings because user capability not set this early in the process.


  • Fix: fixed a bug in certificate detection
  • Tweak: added HTTP_X_PROTO as supported header
  • Tweak: split HTTP_X_FORWARDED_SSL into a variation which can be either ‘1’ or ‘on’
  • Tweak: improved certificate detection by stripping domains of subfolders.
  • Tweak: Multisite bulk SSL activation now chunked in 200 site blocks, to prevent time out issues on large multisite networks.
  • Tweak: a ‘leave review’ notice for new free users


  • Fix: untranslatable string made translatable.


  • Fix: removed anonymous function to maintain PHP 5.2 compatibility.


  • Tweak: mixed content fixer will no longer fire on XML content
  • Tweak: network menu on subsites now always shows to Super Admins
  • Tweak: flush rewrite rules upon activation is delayed by one minute to reduce server load


  • Fix: fixed an image containing uppercase characters, which can lead to the image not showing on some servers.
  • Fix: fixed an issue where the ‘data-rsssl=1’ marker wasn’t inserted when the tag was empty.


  • Tweak: Add privacy notice
  • Tweak: Set javascript redirect to false by default
  • Fix: Hide SSL notice on multisite for all subsites, and show only for “activate_plugins” cap users


  • 加入內建證書來登入 class-certificate.php 檔案以便檢查這網域是否出現在一般名字 以及/或者 是替代性部份的名字。
  • .htaccess 導向現在使用 $1 而不是 {REQUEST_URI}.
  • 在保留 SSL 設定中的 SSL 時, 加入一選項來關閉掛件 。
  • 加入一個過濾器來導向Javaschript程式。
  • 加入一個有評語的側邊欄的插件。


  • Fix: 當主頁不是SSL時,多重網站選項沒顯示出來。
  • Fix: 當檢查 URL 現有blog 時,admin_url 及 site_url 過濾器成空的 blog_id。
  • Tweak: 加入評語來鼓力備份以便啟動備忘錄
  • 使用 Gutenberg.來測試這掛件


  • Fix: 在多重網站設定中的網頁看不到選項”交換混合內容過濾器掛勾”
  • 有一些錯別字及大寫體


  • 在多重式網站上,admin_url 強制現有blog URL’s http 即使現有blog 已载了https。當它們處於 http 而不是 https, 這將只會對其它 blog_urls 強制http 而非現有blog。


  • 已測試到 WP 4.9
  • 加入安全cookie的備忘錄


  • 更改的混合內容從wp_print_footer_scripts 掛回關閉


  • 修護了在檔案路徑裡的雙斜線
  • 修護在啟動通知裡的錯字
  • 微調:加入選項到未沖刷掉的重寫規則
  • 修護:當FORCE_SSL_ADMIN被定義,避免強制 admin_url 到http


  • 微調: 設定為切換混合內容修護掛勾從暫時重導到初始
  • 修護: 在多重網站上嘮叨無法適當的移除


  • 多重網站修護;由於一併入的admin_url and site_url 過濾器被刪除了,請重新加入它們
  • 加入常數RSSSL_CONTENT_FIXER_ON_INIT 所以使用者才會為混合內容而持續使用這初始掛鉤。


  • 微調: 移除JetPack fix,因為它現在併在JetPack 裡
  • 微調: 移動混合內容修復器掛鉤到 template_redirect
  • 修復: 更改了沖刷重寫規則掛鉤從 admin_init 為關閉,在 SSL 啟動上。
  • 多重網站修復: 更改功能如檢視 admin_url 及 site_url 是否應轉回 http 或 https 來檢查在home_url 中的 https 。
  • 微調: 明確指示混合內容修復器所拒絕的 json and xmlrpc 請求


  • 微調: 在多重網站的 home_url 以及site_url 加入一功能以檢示當SSL在每站的基台被使用是否應該為 http 或 https
  • 微調:加入通知以說明當 Really Simple SSL 逐站啟動時將不會有網路目錄。
  • 微調: 為新的多重網站加入掛鉤這樣新網站就會在網際網路啟動時像 SSL 般啟動
  • 微調:限制 JetPack 在埠80的名單微調到反轉 proxy 伺服器。
  • 微調: 新建一專用的 rest Ali 導向常數以防使用者要避免 rest api 從重導向到https.
  • 修復:在多重網站上的解除SSL啟動通知運作不常


  • 反轉 wp_safe_redirect 成 wp_redirect, 因為wp_safe_redirect 產生一個導向到 wp-login.php 即使主url 是domain.com以及請求url 是


  • 沒有功能性上的改變,版本改變是因為 WordPress 沒有執行版本更新的動作。


  • 修護:在混合內容修護器修護問題其中優化的 html 配對會配合交叉元素
  • 以wp_safe_redirect更換wp_redirect
  • 在wp_rest_api加入的強制SSL


  • Tweak: configuration more function


  • Added multisite settings page
  • Added filter for .htaccess code output
  • Increased user capability to “activate_plugins”
  • Added SSL_FORWARDED_PROTO = 1 in addition to SSL_FORWARDED_PROTO = on as supported SSL recognition variable.


  • Removed curl in favor of wp_remote_get


  • Fastest cache compatibility fix


  • Multisite tweaks


  • Removed automatic insertion of .htaccess redirects. The .htaccess redirects work fine for most people, but can cause issues in some edge cases.
  • Added option to explicitly insert .htaccess redirect
  • Added safe mode constant RSSSL_SAFE_MODE to enable activating in a minimized way
  • Fix: RLRSSSL_DO_NOT_EDIT_HTACCESS constant did not override setting correctly when setting was used before.
  • Dropped cache flushing on activation, as this does not always work as expected


  • Tweak: changes testurl to the function test_url()


  • version nr fix


  • Reverted some changes to 2.4.3, as it was causing issues for some users.


fix: Adjusted selection order of .htaccess rules, preventing redirect loops


  • Changed .htaccess redirects to use only one condition


  • removed file_get_contents function from class_url.php, as in some cases this causes issues.


  • Added help tooltips
  • Fix: typos in explanations
  • Added detected server to debug Log
  • Added test folder for CloudFlare
  • Added htaccess redirect to use all available server vars for checking SSL.


  • Tweak: Improved support for cloudflare
  • Tweak: Added support for Cloudfront, thanks to Sharif Alexandre
  • Fix: Prevent writing of empty .htaccess redirect
  • Tweak: Added option for 301 internal wp redirect
  • Tweak: Improved NGINX support
  • Tweak: Added support for when only the $_ENV[HTTPS] variable is present
  • Fix: Mixed content fixing of escaped URLS


  • Removed banner in admin


  • Tweak: Added reload over https link for when SSL was not detected
  • Fixed: After reloading page when the .htaccess message shows, .htaccess is now rewritten.
  • Tweak: Removed Yoast notices
  • Tested for WP 4.7
  • Fixed: bug where network options were not removed properly on deactivation
  • Tweak: Changed mixed content marker to variation without quotes, to prevent issues with scripting etc.


  • Tweak: improved HSTS check


  • Fixed: added a version check on wp_get_sites / get_sites to get rid of deprecated function notice, and keep backward compatibility.
  • Fixed: A bug in multisite where plugin_url returned a malformed url in case of main site containing a trailing slash, and subsite not. Thanks to @gahapati for reporting this bug.
  • Tweak: Added button to settings page to enable SSL, for cases where another plugin is blocking admin notices.
  • Tweak: Rebuilt the mixed content fixer, for better compatibility
  • Tweak: Improved the mixed content marker on the front-end, so it’s less noticeable, and won’t get removed by minification code.


  • Fixed: Clearing of WP Rocket cache after SSL activation causing an error
  • Fixed: Clearing of W3TC after SSL activation did not function properly


  • Re-inserted Jetpack fix.


  • Requires at least changed back to 4.2, as the function that this was meant for didn’t make it in current release yet.


  • Improved request method in url class
  • Added check if .htaccess actually exists in htaccess_contains_redirect_rules()
  • Made activation message more clear.


  • Tested for 4.6
  • Tweak: changed check for htaccess redirect from checking the RSSSL comments to checking the redirect rule itself
  • Fix: htaccess not writable message not shown anymore when SSL not yet enabled
  • Tweak: extended mixed content fixer to cover actions in forms, as those should also be http in case of external urls.
  • Tweak: added safe domain list for domains that get found but are no threat.
  • Tweak: added filter for get_admin_url in multisite situations, where WP always returns an https url, although the site might not be on SSL
  • Tweak: htaccess files and wpconfig are rewritten when the settings page is loaded


  • Fix: removed internal WordPress redirect as it causes issues for some users.
  • Tweak: improved url request method


  • Tweak: Fallback redirect changed into internal wp redirect, which is faster
  • Tweak: When no .htaccess rules are detected, redirect option is enabled automatically
  • Tweak: Url request falls back to file_get_contents when curl does not give a result


  • Updated screenshots


  • Fixed: missing priority in template_include hook caused not activating mixed content fixer in some themes


  • Fixed: javascript redirect insertion


  • Tweak: load css stylesheet only on options page and before enabling ssl
  • Tweak: mixed content fixer triggered by is_ssl(), which prevents fixing content on http.
  • Start detection and configuration only for users with “manage_options” capability


  • Fixed bug in force-deactivate script


  • Changed SSL detection so test page is only needed when not currently on SSL.
  • Some minor bug fixes.


  • Removed “activate ssl” option when no ssl is detected.
  • Optimized emptying of cache
  • Fixed some bugs in deactivation and activation of multisite


  • Gave more control over activation process by explicitly asking to enable SSL.
  • Added a notice if .htaccess is not writable


Fixed a bug in SSL detection


Changed followlocation in curl to an alternative method, as this gives issues when safemode or open_basedir is enabled.
Added dismissable message when redirects cannot be inserted in the .htaccess


Fixed bug in logging of curl detection


Security fixes in ssl-test-page.php


Bugfix with of insecure content fixer.


Added a check if the mixed content fixer is functioning on the front end
Fixed a bug where multisite per_site_activation variable wasn’t stored networkwide
Added clearing of wp_rocket cache thans to Greg for suggesting this
Added filter so you can remove the really simple ssl comment
Fixed a bug in the output buffer usage, which resolves several issues.
Added code so JetPack will run smoothly on SSL as well, thanks to Konstantin for suggesting this


  • To prevent lockouts, it is no longer possible to activate plugin when wp-config.php is not writable. In case of loadbalancers, activating ssl without adding the necessary fix in the wp-config would cause a redirect loop which would lock you out of the admin.
  • Moved redirect above the WordPress rewrite rules in the htaccess file.
  • Added an option to disable the fallback javascript redirection to https.


Brand new content fixer, which fixes all links on in the source of your website.


  • Roll back of mixed content fixer.


Improved the mixed content fixer. Faster and more effective.


Edited the wpconfig define check to prevent warnings when none are needed.


  • Extended detection of homeurl and siteurl constants in wp-config.php with regex to allow for spaces in code.
  • Changed text domain to make this plugin language packs ready
  • Added 404 detection to SSL detection function, so subdomains can get checked properly on subdomain multisite installs


Added slash in redirect rule
small bugfixes


documentation update


  • Added multisite support for the missing https server variable issue
  • Improved curl connection script
  • Added French translation thanks to Cedric


  • Small bug fixes


  • Added per site activation for multisite, but excluded this option for subfolder installs.
  • Added script to easily deactivate the plugin when you are locked out of the WordPress admin.
  • Added support for a situation where no server variables are given which can indicate SSL, which can cause WordPress to generate errors and redirect loops.
  • Removed warning on WooCommerce force SSL after checkout, as only unforce SSL seems to be causing problems
  • Added Russian translation, thanks to xsascha
  • Improved redirect rules in the .htaccess
  • Added option te disable the plugin from editing the .htaccess in the settings
  • Fixed a bug where multisite would not deactivate correctly
  • Fixed a bug where insecure content scan would not scan custom post types


  • Made WooCommerce warning dismissable, as it does not seem to cause issues
  • Fixed a bug caused by WP native plugin_dir_url() returning relative path, resulting in no SSL messages


  • Fixed a bug where example .htaccess rewrite rules weren’t generated correctly
  • Added WooCommerce to the plugin conflicts handler, as some settings conflict with this plugin, and are superfluous when you force your site to SSL anyway.
  • Excluded transients from mixed content scan results


  • Fixed a bug where script would fail because curl function was not installed.
  • Added debug messages
  • Improved FAQ, removed typos
  • Replaced screenshots


  • Improved user interface with tabs
  • Changed function to test SSL test page from file_get_contents to curl, as this improves response time, which might prevent “no SSL messages”
  • Extended the mixed content fixer to replace src=”http:// links, as these should always be https on an SSL site.
  • Added an error message in case of force rewrite titles in Yoast SEO plugin is used, as this prevents the plugin from fixing mixed content


  • Added support for loadbalancer and is_ssl() returning false: in that case a wp-config fix is needed.
  • Improved performance
  • Added debugging option, so a trace log can be viewed
  • Fixed a bug where the rlrsssl_replace_url_args filter was not applied correctly.


  • Fixed an issue where in some configurations the replace url filter did not fire


  • Added the force SSL option, in cases where SSL could not be detected for some reason.
  • Added a test to check if the proposed .htaccess rules will work in the current environment.
  • Readded HSTS to the htaccess rules, but now as an option. Adding this should be done only when you are sure you do not want to revert back to http.


  • Improved instructions regarding uninstalling when locked out of back-end


  • Removed HSTS headers, because it is difficult to roll back.


  • Added the possibility to prevent htaccess from being edited, in case of redirect loop.


  • Refined SSL detection
  • Bugfix on deactivation of plugin


  • Fixed an SSL detection issue which could lead to redirect loop


  • Improved redirect rules for .htaccess


  • Now plugin only changes .htaccess when one of three preprogrammed ssl types was recognized.
  • Simplified filter use to add your own urls to replace, see f.a.q.
  • Default javascript redirect when .htaccess redirect does not succeed


  • Fixed bug where number of options with mixed content was not displayed correctly


  • limited the number of files, posts and options that can be show at once in the mixed content scan.


  • Added version control to the .htaccess rules, so the .htaccess gets updated as well.
  • Added detection of loadbalancer and cdn so .htaccess rules can be adapted accordingly. Fixes some redirect loop issues.
  • Added the possibility to disable the auto replace of insecure links
  • Added a scan to scan the website for insecure links
  • Added detection of in wp-config.php defined siteurl and homeurl, which could prevent from successful url change.
  • Dropped the force ssl option (used when not ssl detected)
  • Thanks to Peter Tak, PTA security for mentioning the owasp security best practice in .htaccess,


  • Added 301 redirect to .htaccess for seo purposes


  • Fixed some typos in readme
  • added screenshots
  • fixed a bug where on deactivation the https wasn’t removed from siturl and homeurl


  • Added SSL detection by opening a page in the plugin directory over https
  • Added https redirection in .htaccess, when possible
  • Added warnings and messages to improve user experience
  • Added automatic change of siteurl and homeurl to https, to make backend ssl proof.
  • Added caching flush support for WP fastest cache, Zen Cache and W3TC
  • Fixed bug where siteurl was used as url to fix instead of homeurl
  • Fixed issue where url was not replaced on front end, when used url in content is different from home url (e.g. as homeurl and in content)
  • Added filter so you can add cdn urls to the replacement script
  • Added cdn to standard replacement script, as it is often used without https.


  • Improved installation instructions