Comment installer et configurer php nginx
php nginx安装配置的方法:首先找到Nginx的配置文件;然后在vim中点击“i”进入编辑模式;接着使用FastCGI协议默认配置;最后重启Nginx服务即可。
推荐:《PHP视频教程》
写在前面
在学习搭建LNMP环境的过程中初识Nginx(读法:engine x),感觉完全复制粘贴网上的安装配置方法没有什么意义,就打算展开学习一下。
关于Windows下Nginx的安装和配置:Windows下的Nginx安装与配置(PHP)
工作环境
- 腾讯云 1核 1GB 1Mbps 云服务器
- CentOS 7.2 64位
- 已经安装了PHP
- 使用putty链接服务器
书面信息
Nginx:俄罗斯工程师Igor Sysoev
开发,高性能的HTTP/反向代理/邮件服务器。
安装
在CentOS下安装:
#使用yum安装,-y表示对所有的提问都回答“yes”,install为安装指令yum -y install nginx
配置
Nginx的配置文件默认位置为:/etc/nginx/nginx.conf
如果说找不到可以搜索一下:
#locate 搜索文件的位置locate nginx.conf
如上图,在我的环境中nginx.conf在/etc/nginx/nginx.conf
使用vim打开文件nginx.conf
vim /etc/nginx/nginx.conf
配置文件分析
nginx.conf内容如下(只截取了没被注掉的部分):
# nginx运行的用户名user nginx;# nginx启动进程,通常设置成和cpu的数量相等,这里为自动worker_processes auto;# errorlog文件位置error_log /var/log/nginx/error.log;# pid文件地址,记录了nginx的pid,方便进程管理pid /run/nginx.pid;# Load dynamic modules. See /usr/share/nginx/README.dynamic.# 用来加载其他动态模块的配置include /usr/share/nginx/modules/*.conf;# 工作模式和连接数上限events { # 每个worker_processes的最大并发链接数 # 并发总数:worker_processes*worker_connections worker_connections 1024; }# 与提供http服务相关的一些配置参数类似的还有mailhttp { # 设置日志的格式 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; # access_log记录访问的用户、页面、浏览器、ip和其他的访问信息 access_log /var/log/nginx/access.log main; # 这部分下面会单独解释 # 设置nginx是否使用sendfile函数输出文件 sendfile on; # 数据包最大时发包(使用Nagle算法) tcp_nopush on; # 立刻发送数据包(禁用Nagle算法) tcp_nodelay on; # 链接超时时间 keepalive_timeout 65; # 这个我也不清楚... types_hash_max_size 2048; # 引入文件扩展名与文件类型映射表 include /etc/nginx/mime.types; # 默认文件类型 default_type application/octet-stream; # Load modular configuration files from the /etc/nginx/conf.d directory. # See http://nginx.org/en/docs/ngx_core_module.html#include # for more information. include /etc/nginx/conf.d/*.conf; # http服务上支持若干虚拟主机。 # 每个虚拟主机一个对应的server配置项 # 配置项里面包含该虚拟主机相关的配置。 server { # 端口 listen 80 default_server; listen [::]:80 default_server; # 访问的域名 server_name _; # 默认网站根目录(www目录) root /usr/share/nginx/html; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; # 默认请求 location / { } # 错误页(404) error_page 404 /404.html; location = /40x.html { } # 错误页(50X) error_page 500 502 503 504 /50x.html; location = /50x.html { } } }
值得说明的几点
关于error_log 可以设置log的类型(记录什么级别的信息)有:debug、info、notice、warn、error、crit几种
关于sendfile
一般的网络传输过程
硬盘 >> kernel buffer >> user buffer>> kernel socket buffer >>协议栈
使用sendfile后
硬盘 >> kernel buffer (快速拷贝到kernelsocket buffer) >>协议栈
可以显著提高传输性能。tcp_nopush和tcp_nodelay
tcp_nopush只有在启用了sendfile时才起作用,
在启用tcp_nopush后,程序接收到了数据包后不会马上发出,而是等待数据包最大时一次性发出,可以缓解网络拥堵。(Nagle化)
相反tcp_nodelay则是立即发出数据包.
配置
分析完了配置文件后开始配置环境。
因为只是配置PHP的服务器,而且只使用一个端口所以只需要改动server部分
在vim中点击‘i’进入编辑模式。
server { listen 80 default_server; listen [::]:80 default_server; # 这里改动了,也可以写你的域名 server_name localhost; root /usr/share/nginx/html; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { # 这里改动了 定义首页索引文件的名称 index index.php index.html index.htm; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } # 这里新加的 # PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI协议默认配置. # Fastcgi服务器和程序(PHP,Python)沟通的协议. location ~ \\.php$ { # 设置监听端口 fastcgi_pass 127.0.0.1:9000; # 设置nginx的默认首页文件(上面已经设置过了,可以删除) fastcgi_index index.php; # 设置脚本文件请求的路径 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 引入fastcgi的配置文件 include fastcgi_params; } }
修改完成后将vim编辑器切换到一般一半模式(Esc),然后输入:wq
保存退出。
之后重启Nginx服务
service nginx restart
以上就配置成功了,但是上面的配置只是nginx配置部分,更多的内容需要继续学习。
测试
我们可以通过下面的方法判断Nginx配置是否成功。
在Nginx的网站根目录(/usr/share/nginx/html)下创建一个php文件,随便起名我的是phpinfo.php
内容如下:
<?php // 顺便可以看一下php的扩展全不全 phpinfo();
Copier après la connexion进入你的网站看看能不能打开文件
你的ip/文件名 例如:localhost/phpinfo.php
我的成功了~~
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

PHP est utilisé pour créer des sites Web dynamiques, et ses fonctions principales incluent: 1. Générer du contenu dynamique et générer des pages Web en temps réel en se connectant à la base de données; 2. Traiter l'interaction utilisateur et les soumissions de formulaires, vérifier les entrées et répondre aux opérations; 3. Gérer les sessions et l'authentification des utilisateurs pour offrir une expérience personnalisée; 4. Optimiser les performances et suivre les meilleures pratiques pour améliorer l'efficacité et la sécurité du site Web.

PHP et Python ont leurs propres avantages et inconvénients, et le choix dépend des besoins du projet et des préférences personnelles. 1.Php convient au développement rapide et à la maintenance des applications Web à grande échelle. 2. Python domine le domaine de la science des données et de l'apprentissage automatique.

PHP utilise les extensions MySQLI et PDO pour interagir dans les opérations de base de données et le traitement de la logique côté serveur, et traite la logique côté serveur via des fonctions telles que la gestion de session. 1) Utilisez MySQLI ou PDO pour vous connecter à la base de données et exécuter les requêtes SQL. 2) Gérer les demandes HTTP et l'état de l'utilisateur via la gestion de session et d'autres fonctions. 3) Utiliser les transactions pour assurer l'atomicité des opérations de base de données. 4) Empêcher l'injection de SQL, utiliser les connexions de gestion des exceptions et de clôture pour le débogage. 5) Optimiser les performances via l'indexation et le cache, écrivez du code très lisible et effectuez une gestion des erreurs.

PHP est principalement la programmation procédurale, mais prend également en charge la programmation orientée objet (POO); Python prend en charge une variété de paradigmes, y compris la POO, la programmation fonctionnelle et procédurale. PHP convient au développement Web, et Python convient à une variété d'applications telles que l'analyse des données et l'apprentissage automatique.

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 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.

Vous pouvez interroger le nom du conteneur Docker en suivant les étapes: répertorier tous les conteneurs (Docker PS). Filtrez la liste des conteneurs (à l'aide de la commande grep). Obtient le nom du conteneur (situé dans la colonne "Noms").

PHP convient au développement Web et au prototypage rapide, et Python convient à la science des données et à l'apprentissage automatique. 1.Php est utilisé pour le développement Web dynamique, avec une syntaxe simple et adapté pour un développement rapide. 2. Python a une syntaxe concise, convient à plusieurs champs et a un écosystème de bibliothèque solide.
