首页 > 后端开发 > PHP问题 > windows下怎么安装nginx和php

windows下怎么安装nginx和php

PHPz
发布: 2023-04-11 11:11:44
原创
2946 人浏览过

Nginx是一个兼容性非常好的高性能Web服务器,不仅可以充当Web服务器,还可以充当反向代理,负载均衡器等角色,是互联网基础设施中不可或缺的组件之一。在Windows下,我们可以很方便地安装和配置Nginx来满足我们的需求。

本文将介绍如何在Windows环境下安装Nginx+PHP来提供Web服务,并详细阐述配置过程中可能出现的问题及其解决方案。

一、安装Nginx

1、下载Nginx

从Nginx官网(http://nginx.org/)上下载Windows版本的Nginx,并解压到指定目录。

2、配置Nginx

(1)编辑nginx.conf文件,该文件是Nginx的主配置文件,其中的配置项非常多。修改如下项:

worker_processes  2;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    #日志格式
    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  logs/access.log  main;
    #实体文件最长有效时间(缓存)
    sendfile        on;
    #针对sendfile文件的缓存,尽可能大,使用磁盘缓存
    sendfile_max_chunk 1m;
    #启用tcp_nopush使数据尽快地发送到客户端,默认关闭。
    tcp_nopush      on;
    #tcp_nodelay应置于“on”,即对于目的地或来自浏览器的nginx客户端,应该避免一些发送消息的延迟。
    tcp_nodelay      on;
    #将缓冲区从磁盘io操作改为内存操作
    aio              on;
    #不更新文件上次访问时间,可减少磁盘io操作
    open_file_cache off;
    #gzip压缩开启,compression_ratio是压缩的比率
    gzip  on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 6;
    gzip_types       text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
    include servers/*;
}
登录后复制

(2)新建servers文件夹,并在文件夹下新建一个server.conf文件,该文件作为具体某个网站的配置文件,例如:

server {
    listen        80;         //端口号
    server_name   localhost;  //虚拟主机名
    index         index.html index.php;  //默认首页
    root E:/htdocs;            //根目录
    autoindex on;              //自动索引
    client_max_body_size  1m;  //客户端上传文件大小
    fastcgi_connect_timeout 300; //fastcgi超时时间
    fastcgi_send_timeout 300;
    fastcgi_read_timeout 300;
    fastcgi_buffer_size 64k;  //fastcgi缓冲区大小
    fastcgi_buffers 4 64k;
    fastcgi_busy_buffers_size 128k;
    fastcgi_temp_file_write_size 128k;
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;  //php-fpm的监听地址
        fastcgi_index index.php;
        include fastcgi_params;       //fastcgi常用参数
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}
登录后复制

(3)启动Nginx,进入到Nginx的安装目录,执行命令:

start nginx
登录后复制

(4)检查Nginx是否启动成功,直接在浏览器中输入localhost,若能正常显示Nginx的欢迎页,则Nginx已成功安装。

二、安装PHP

1、下载PHP

从PHP官网(http://windows.php.net/download/)下载Windows版本的PHP并解压到指定目录中。

2、配置PHP

(1)编辑php.ini配置文件,修改如下项:

;php的扩展(Linux格式分隔符);表示分隔符
extension=php_openssl.dll;
extension=php_pdo_mysql.dll;
extension=php_mbstring.dll;
extension=php_curl.dll;
extension=php_fileinfo.dll;
extension=php_mysqli.dll;
extension=php_pdo_mysql.dll;
extension=php_pdo_sqlite.dll;
登录后复制

(2)启动PHP-FPM,进入到PHP安装目录,执行命令:

php-cgi.exe -b 127.0.0.1:9000
登录后复制

三、集成Nginx和PHP

1、修改Nginx配置文件中的fastcgi_pass项,将其改为:

#修改前
fastcgi_pass   127.0.0.1:9000;
#修改后
fastcgi_pass   127.0.0.1:9000;
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
fastcgi_index  index.php;
include        fastcgi_params;
登录后复制

2、检查Nginx配置文件是否正确:

nginx -t
登录后复制

3、重启Nginx:

nginx -s reload
登录后复制

4、测试PHP环境,创建test.php文件,在文件中输入如下内容:

<?php
phpinfo();
?>
登录后复制

然后在浏览器中输入localhost/test.php,如果能够显示PHP环境,则PHP也已经成功安装。

四、安装MySQL

为了提供更完善的Web服务,通常我们也需要在Windows下安装MySQL作为数据库解决方案。

1、下载MySQL

从MySQL官网(https://www.mysql.com/downloads/windows/)下载Windows版本的MySQL并解压到指定目录中。

2、配置MySQL

(1)初始化MySQL:

cd mysql/bin
mysqld --initialize-insecure --user=mysql
登录后复制

(2)启动MySQL服务:

mysqld --console
登录后复制

(3)修改MySQL root用户密码:

mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';
登录后复制

此处new_password是新密码,即可成功修改MySQL root用户的密码。

五、小结

通过以上的步骤,我们已经成功地在Windows环境下安装了Nginx+PHP,并成功搭建起Web服务器,为我们的Web应用程序提供了强有力的支持。需要注意的是,不同版本的软件之间可能会产生兼容性问题,因此在安装和配置过程中需要非常小心和耐心,尽可能多地了解和掌握软件之间的交互细节,才能真正做到高效、稳定地使用这些软件。

以上是windows下怎么安装nginx和php的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板