- A+
所属分类:网络技术
准备应用程序包
安装,在D盘新建wnmp 文件夹。
nginx 解压至 D:/wnmp/nginx 文件夹下
mariadb 解压到 D:/wnmp/maradb 文件夹
php 解压至 D:/wnmp/php 文件夹下
配置
配置PHP
将php.ini-development 另存为php.ini ,打开php.ini 修改扩展所在路径
extension_dir = "D:\wnmp\php\ext"
打开需要的PHP扩展(视情况而定)
extension = php_curl
extension = php_gd2
extension = php_mbstring
extension = php_mysqli
extension = php_pdo_mysql
设置CGI 跟nginx 通信
enable_dl = On
cgi.force_redirect = 0
cgi.fix_pathinfo=1
fastcgi.impersonate = 1
cgi.rfc2616_headers = 1
配置Nginx
进入nginx根目录下的conf文件夹,新建vhost文件夹;
将内部的server配置段提取单独放在一个文件里,存到了conf/vhost下,以方便配置多个虚拟主机。
并在nginx.conf里http配置段内添加了一行 include vhost/*.conf;用来读取vhost下的虚拟主机配置。
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
include vhost/*.conf; #新增
fastcgi_connect_timeout 999999;
fastcgi_send_timeout 999999;
fastcgi_read_timeout 999999;
fastcgi_buffer_size 512k;
fastcgi_buffers 4 512k;
fastcgi_busy_buffers_size 512k;
fastcgi_temp_file_write_size 512k;
}
配置主机:
进入vhost文件,新建一个mall.conf(你自己想取的名字)文件。
server {
listen 80;
server_name mall.me; #可添加多个,多个之间“空格”分开
#autoindex on;#打开目录浏览,这样当没有找到index文件,就也已浏览目录中的文件
location / {
root F:/wnmp/wwwroot/mall;
index index.html index.htm index.php;
#此处是伪静态配置
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php/?/$1 last;
break;
}
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root F:/wnmp/wwwroot;
}
location ~ \.php$ {
root F:/wnmp/wwwroot/mall;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
配置Mariadb
启动命令行工具进入Mariadb根目录下的bin目录,输入以下命令对mariadb进行初始化操作。
mysql_install_db.exe
输入以下命令更改ROOT账户密码。
mysql.exe -u root -p
回车进入MYSQL控制台
SET PASSWORD FOR 'root'@'::1' = PASSWORD('123456');
SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('123456');
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
FLUSH PRIVILEGES;
exit;
更改密码后退出即可。
配置启动脚本
将RunHiddenConsole 移动到nginx.exe 同级目录
新建启动服务器脚本,输入如下代码:
@echo off
echo Starting PHP FastCGI...
RunHiddenConsole D:/wnmp/php/php-cgi.exe -b 127.0.0.1:9000 -c D:/wnmp/php/php.ini
echo Starting nginx...
RunHiddenConsole D:/wnmp/nginx/nginx.exe -p D:/wnmp/nginx
echo Starting mysql...
RunHiddenConsole D:/wamp/bin/mysql/mysql5.7.14/bin/mysqld.exe
新建停止服务器脚本,输入如下代码:
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
echo Stopping mysql...
taskkill /F /IM mysqld.exe > nul
exit