准备
- 环境 Ubuntu 20.04 LTS (GNU/Linux 5.4.0-96-generic x86_64)
- Ubuntu 安装MySQL8 配置
- Ubuntu 安装nginx/1.18.0 以及配置+php+laravel
- Ubuntu 安装PHP7.3 以及扩展与配置
安装
- 执行如下命令,遇到Y/n输入Y,回车。
sudo apt-get install nginx
- 执行
nginx -v
显示成功 - 浏览器方位IP显示成功
配置
- 打开扩展项目配置,找到编辑
nginx.conf
文件,找到include /etc/nginx/conf.d/*.conf
前面注释去掉,保存退出,默认是去掉的
配置PHP项目
- 进入
/etc/nginx/conf.d
目录,新建xxx.conf
文件,输入如下
配置默认PHP项目
server {
listen 80;
server_name www.xxx.com 域名 或者 IP;
access_log /var/log/nginx/www.xxx.com.access.log; # 日志文件路径
error_log /var/log/nginx/www.xxx.com.error.log; # 日志文件路径
location / {
root /var/www/xxx; # 项目路径
index index.php index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/xxx;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/xxx$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
- 在
/var/www/xxx
phpinfo.php文件,编写如下
<?php
phpinfo();
- 重启,访问ip或者域名/phpinfo.php,访问成功
配置laravel项目
server {
listen 80;
server_name www.xxx.com 域名 或者 IP;
access_log /var/log/nginx/www.xxx.com.access.log; # 日志文件路径
error_log /var/log/nginx/www.xxx.com.error.log; # 日志文件路径
location / {
root /var/www/xxx; # 项目路径
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$query_string;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/xxx;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/xxx$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
安装位置及命令
- 安装位置
/etc/nginx
nginx.conf
文件位置/etc/nginx/nginx.conf
- 默认项目路径
/var/www/html
- 默认日志路径
/var/log/nginx
- 命令
- 启动
service nginx start
- 停止
service nginx stop
- 重启
service nginx restart
- 重载
service nginx reload