Maison développement back-end tutoriel php 给站点加上https支持

给站点加上https支持

Aug 08, 2016 am 09:29 AM
nginx sudo

本文引用自http://blog.linjunhalida.com/blog/using-https-for-rails/
https是针对http的加密协议,它可以保证用户访问网站的过程中,通讯的数据是加密的,这样可以防止第三方监听,保护用户隐私。这里总结一下如何给Rails加上https的支持。首先,假设你的rails已经跑起来了,在http://yourserver.com,服务器是ubuntu,本地的访问方式是127.0.0.1:8787,那么你需要利用nginx来提供https的服务。首先安装nginx和openssl:
<codeandale mono console new font-style:inherit font-variant:inherit font-weight:inherit line-height:inherit vertical-align:baseline>sudo apt-get install nginx openssl
</codeandale>
Copier après la connexion
生成服务器的秘钥公钥:
<codeandale mono console new font-style:inherit font-variant:inherit font-weight:inherit line-height:inherit vertical-align:baseline>openssl req -new -nodes -keyout server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
</codeandale>
Copier après la connexion
生成的几个文件解释:
  • server.key 服务器的私钥。
  • server.csr (certificate signing request) https证书签名请求。
  • server.crt 生成的服务器证书。
  • 然后有这些文件,我们可以配置nginx服务了。

    生成nginx的配置文件:

    <codeandale mono console new font-style:inherit font-variant:inherit font-weight:inherit line-height:inherit vertical-align:baseline>sudo touch /etc/nginx/sites-available/yourserver
    sudo ln -s /etc/nginx/sites-available/yourserver /etc/nginx/sites-enabled
    sudo vi /etc/nginx/sites-available/yourserver
    </codeandale>
    Copier après la connexion

    里面的内容:

    <span>1</span><span>2</span><span>3</span><span>4</span><span>5</span><span>6</span><span>7</span><span>8</span><span>9</span><span>10</span><span>11</span><span>12</span><span>13</span><span>14</span><span>15</span><span>16</span><span>17</span><span>18</span><span>19</span><span>20</span><span>21</span><span>22</span><span>23</span><span>24</span><span>25</span>
    Copier après la connexion
    <codeandale mono console new background:rgb><span><span>upstream unicorn {
    </span><span>  server 127.0.0.1:8787 fail_timeout=0;
    </span><span>}
    </span><span>server {
    </span><span>  listen       443;
    </span><span>  server_name  yourserver.com;
    </span><span></span><span>  ssl                  on;
    </span><span>  ssl_certificate      yourpath/server.crt;
    </span><span>  ssl_certificate_key  yourpath/server.key;
    </span><span></span><span>  ssl_session_timeout  5m;
    </span><span></span><span>  ssl_protocols  SSLv2 SSLv3 TLSv1;
    </span><span>  ssl_ciphers  HIGH:!aNULL:!MD5;
    </span><span>  ssl_prefer_server_ciphers   on;
    </span><span></span><span>  location / {
    </span><span>      proxy_set_header Host $host;
    </span><span>      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    </span><span>      proxy_set_header X-Forwarded-Proto https;
    </span><span>      proxy_redirect off;
    </span><span>      proxy_pass http://localserver;
    </span><span>  }
    </span><span>}</span></span></codeandale>
    Copier après la connexion

    需要修改里面的server_name,yourpath。

    然后重新启动nginx:

    <codeandale mono console new font-style:inherit font-variant:inherit font-weight:inherit line-height:inherit vertical-align:baseline>sudo service nginx restart
    </codeandale>
    Copier après la connexion

    如果没有报错,那么你就可以通过https://yourserver.com来访问你的网站了。

    不过,浏览器会阻止你继续访问,或者需要你的确认。 浏览器会保存一份可信网站的列表,你的服务器加密是自己生成的,不在里面。 如果你的网站是商用的,最好去注册一下。这里有一个指引。

    引用资料:

    • railscast

    Posted by 机械唯物主义 Mar 24th, 2013  rails


    以上就介绍了给站点加上https支持,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

    Déclaration de ce site Web
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

    Outils d'IA chauds

    Undresser.AI Undress

    Undresser.AI Undress

    Application basée sur l'IA pour créer des photos de nu réalistes

    AI Clothes Remover

    AI Clothes Remover

    Outil d'IA en ligne pour supprimer les vêtements des photos.

    Undress AI Tool

    Undress AI Tool

    Images de déshabillage gratuites

    Clothoff.io

    Clothoff.io

    Dissolvant de vêtements AI

    AI Hentai Generator

    AI Hentai Generator

    Générez AI Hentai gratuitement.

    Article chaud

    R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
    1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Meilleurs paramètres graphiques
    1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
    Will R.E.P.O. Vous avez un jeu croisé?
    1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

    Outils chauds

    Bloc-notes++7.3.1

    Bloc-notes++7.3.1

    Éditeur de code facile à utiliser et gratuit

    SublimeText3 version chinoise

    SublimeText3 version chinoise

    Version chinoise, très simple à utiliser

    Envoyer Studio 13.0.1

    Envoyer Studio 13.0.1

    Puissant environnement de développement intégré PHP

    Dreamweaver CS6

    Dreamweaver CS6

    Outils de développement Web visuel

    SublimeText3 version Mac

    SublimeText3 version Mac

    Logiciel d'édition de code au niveau de Dieu (SublimeText3)

    Comment vérifier si Nginx est démarré Comment vérifier si Nginx est démarré Apr 14, 2025 pm 01:03 PM

    Comment confirmer si Nginx est démarré: 1. Utilisez la ligne de commande: SystemCTl Status Nginx (Linux / Unix), netStat -ano | Findstr 80 (Windows); 2. Vérifiez si le port 80 est ouvert; 3. Vérifiez le message de démarrage NGINX dans le journal système; 4. Utilisez des outils tiers, tels que Nagios, Zabbix et Icinga.

    Comment configurer Nginx dans Windows Comment configurer Nginx dans Windows Apr 14, 2025 pm 12:57 PM

    Comment configurer Nginx dans Windows? Installez Nginx et créez une configuration d'hôte virtuelle. Modifiez le fichier de configuration principale et incluez la configuration de l'hôte virtuel. Démarrer ou recharger nginx. Testez la configuration et affichez le site Web. Activer sélectivement SSL et configurer les certificats SSL. Définissez sélectivement le pare-feu pour permettre le trafic Port 80 et 443.

    Comment vérifier si Nginx est démarré? Comment vérifier si Nginx est démarré? Apr 14, 2025 pm 12:48 PM

    Dans Linux, utilisez la commande suivante pour vérifier si Nginx est démarré: SystemCTL Status Nginx Juges Basé sur la sortie de la commande: si "Active: Active (Running)" s'affiche, Nginx est démarré. Si "Active: Inactive (Dead)" est affiché, Nginx est arrêté.

    Comment configurer le nom de domaine du serveur cloud dans nginx Comment configurer le nom de domaine du serveur cloud dans nginx Apr 14, 2025 pm 12:18 PM

    Comment configurer un nom de domaine NGINX sur un serveur cloud: Créez un enregistrement A pointant vers l'adresse IP publique du serveur cloud. Ajoutez des blocs d'hôtes virtuels dans le fichier de configuration Nginx, en spécifiant le port d'écoute, le nom de domaine et le répertoire racine du site Web. Redémarrez Nginx pour appliquer les modifications. Accéder à la configuration du test de nom de domaine. Autres notes: Installez le certificat SSL pour activer HTTPS, assurez-vous que le pare-feu autorise le trafic Port 80 et attendez que la résolution DNS prenne effet.

    Comment résoudre l'erreur Nginx304 Comment résoudre l'erreur Nginx304 Apr 14, 2025 pm 12:45 PM

    Réponse à la question: 304 Erreur non modifiée indique que le navigateur a mis en cache la dernière version de ressource de la demande du client. Solution: 1. Effacer le cache du navigateur; 2. Désactiver le cache du navigateur; 3. Configurer Nginx pour permettre le cache client; 4. Vérifier les autorisations du fichier; 5. Vérifier le hachage du fichier; 6. Désactiver le CDN ou le cache proxy inversé; 7. Redémarrez Nginx.

    Comment démarrer Nginx dans Linux Comment démarrer Nginx dans Linux Apr 14, 2025 pm 12:51 PM

    Étapes pour démarrer Nginx dans Linux: Vérifiez si Nginx est installé. Utilisez SystemCTL Start Nginx pour démarrer le service NGINX. Utilisez SystemCTL Activer Nginx pour activer le démarrage automatique de Nginx au démarrage du système. Utilisez SystemCTL Status Nginx pour vérifier que le démarrage est réussi. Visitez http: // localhost dans un navigateur Web pour afficher la page de bienvenue par défaut.

    Comment résoudre nginx403 Comment résoudre nginx403 Apr 14, 2025 am 10:33 AM

    Comment corriger l'erreur interdite Nginx 403? Vérifier les autorisations de fichier ou de répertoire; 2. Vérifier le fichier .htaccess; 3. Vérifiez le fichier de configuration NGINX; 4. Redémarrer Nginx. D'autres causes possibles incluent les règles de pare-feu, les paramètres de Selinux ou les problèmes d'application.

    Comment démarrer le serveur Nginx Comment démarrer le serveur Nginx Apr 14, 2025 pm 12:27 PM

    Le démarrage d'un serveur Nginx nécessite différentes étapes en fonction des différents systèmes d'exploitation: Système Linux / Unix: Installez le package NGINX (par exemple, en utilisant Apt-Get ou Yum). Utilisez SystemCTL pour démarrer un service NGINX (par exemple, sudo systemctl start nginx). Système Windows: téléchargez et installez les fichiers binaires Windows. Démarrer Nginx à l'aide de l'exécutable Nginx.exe (par exemple, nginx.exe -c conf \ nginx.conf). Peu importe le système d'exploitation que vous utilisez, vous pouvez accéder au serveur IP

    See all articles