前言:如果是本地的话建议使用集成环境wamp、或者lamp、lnmp(vagrant,homestead)。这样可以配置域名去访问。
如果是外部的虚拟机或者公司的物理机,则需要用ip+端口的方式去访问项目,总不可能配置个域名,让每个访问的人都在本地添加配置hosts吧。(有说可以利用nginx的方向代理配置域名,有时间再去测试吧)。
1、ubuntu安装nginx
sudo apt-get install nginx
2、nginx配置虚拟主机
在/etc/nginx/sites-available目录下执行
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com
or进入/etc/nginx/sites-available目录执行
sudo cp default example.com
example.com 内容如下:
server {
listen 8080;
listen [::]:8080;
server_name 192.168.3.10; #虚拟机ip
root /var/www/html/test;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
#try_files $uri $uri/ /index.php?$query_string; #laravel优雅写法
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
3、修改default,这样可以通过ip去访问测试单个文件(另外default文件也可以直接删除,建议留着)
//改成如下所示
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
4、执行
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
5、重启
sudo service nginx restart
or sudo systemctl restart nginx
// sudo ufw allow 8080 假如你开启了防火墙,则开启防火墙端口
6、访问
192.168.3.10:8080