下面是详细的“windows7配置Nginx+php+mysql”的攻略。
准备工作
1. 下载软件
- Nginx:下载
nginx-1.19.1.zip
版本。 - PHP:下载
VC15 x64 Thread Safe
版本。 - MySQL:下载
mysql-installer-community-5.7.31.0.msi
版本。
2. 安装软件
将下载好的软件安装到系统中。MySQL安装过程中记得设置密码并记住。
配置Nginx
1. 解压Nginx
将下载的nginx-1.19.1.zip
压缩包解压到任意目录,这里以C:\nginx
为例。
2. 配置Nginx
在C:\nginx
目录下创建一个新的文件夹,命名为conf
。
在该文件夹下创建nginx.conf
文件并添加以下内容:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
3. 启动Nginx
打开CMD并执行下面的命令:
C:\nginx\nginx.exe
执行成功后,访问http://localhost
会显示Nginx默认界面。
配置PHP
1. 解压PHP
将下载的PHP
压缩包解压到任意目录,这里以C:\php
为例。
2. 配置PHP
将C:\php
文件夹下的php.ini-production
文件复制一份并改名为php.ini
。
修改php.ini
文件如下:
fastcgi.impersonate = 1
cgi.fix_pathinfo=0
date.timezone = Asia/Shanghai
3. 修改PATH环境变量
打开系统的环境变量编辑界面,将C:\php
目录添加到PATH环境变量中。
4. 启动PHP-cgi
打开CMD并执行下面的命令:
C:\php\php-cgi.exe -b 127.0.0.1:9000
5. 测试PHP
在任意目录下新建test.php
文件并添加以下内容:
<?php
phpinfo();
将该文件放入C:\nginx\html
目录下,访问http://localhost/test.php
会显示PHP信息页面。
配置MySQL
1. 安装MySQL
运行mysql-installer-community-5.7.31.0.msi
安装程序进行安装。
2. 配置MySQL
在MySQL安装目录下找到my.ini
配置文件,在文件末尾添加以下内容:
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
3. 启动MySQL服务
按下“win + R”组合快捷键,输入services.msc
打开服务管理器。找到mysql
服务,启动该服务。
4. 测试MySQL
在CMD中执行下面的命令:
mysql -u root -p
按提示输入密码,如果成功进入MySQL命令行,则MySQL配置成功。
示例说明
下面提供两个配置Nginx+php+MySQL的示例:
示例一:基础网站
假设我们要搭建一个基础网站,需要采用LAMP架构,即Linux+Apache+MySQL+PHP。因为我们使用的是Windows7系统,无法直接采用LAMP架构,但是相应地,我们可以使用类似的配置——Nginx+PHP+Cgi+MySQL。
在Nginx的配置文件中添加以下内容:
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location ^~ /images/ {
root html;
}
location /user/ {
rewrite ^/user/(.*)$ /user.php?user=$1 last;
}
location /news/ {
rewrite ^/news/(.*)$ /news.php?news=$1 last;
}
location /api/ {
root html;
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root/api/api.php;
}
location /socket.io/ {
root html;
proxy_pass http://localhost:9001;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location ~ /\.ht {
deny all;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
以上配置中,
location /
表示默认页面,配置文件存放在html
文件夹下。location ^~/images/
表示访问图片文件夹,配置文件存放在html/images
下。location /user/
表示用户页面,可以通过访问http://localhost/user/username
来访问对应的用户页面。location /news/
表示新闻页面,可以通过访问http://localhost/news/title
来访问对应的新闻页面。location /api/
表示API页面,配置文件存放在html/api/api.php
下。location /socket.io/
表示socket.io的页面,代理到localhost:9001
端口上。location ~ /\.ht
表示Apache隐藏文件,禁止访问。location ~ \.php$
表示访问PHP文件,PHP解析通过fastcgi_pass
指定的地址进行。
示例二:社交网站
假设我们要搭建一个简单的社交网站,需要采用LEMP架构,即Linux+Engine X(Nginx)+MySQL+PHP。
在Nginx的配置文件中添加以下内容:
server {
listen 80;
server_name localhost;
root /var/www/html/social/;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
以上配置中,
location /
表示默认页面,配置文件存放在/var/www/html/social/
文件夹下。location ~ \.php$
表示访问PHP文件,PHP解析通过fastcgi_pass
指定的地址进行。location ~ /\.ht
表示Apache隐藏文件,禁止访问。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:windows7配置Nginx+php+mysql的详细教程 - Python技术站