note :
- Set up local server separately using homebrew
- maybe the location of the file is different
First, create the conf file at
\opt\homebrew\etc\nginx\servers
and then fill the content, ex:
# Upstream to abstract backend connection(s) for php
server {
## Your website name goes here.
server_name project.local;
## Your only path reference.
root /opt/homebrew/var/www/project;
## This should be in your http block and if it is, it's not needed here.
index index.php;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location / {
# This is cool because no php is touched for static content.
# include the "?$args" part so non-default permalinks doesn't break when using query string
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
#NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
include fastcgi.conf;
fastcgi_intercept_errors on;
fastcgi_pass php;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
}
Second, add the hostname to
\private\etc\hosts
127.0.0.1 localhost
127.0.1.1 dicky54putra
127.0.0.1 project.local
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
# Added by Docker Desktop
# To allow the same kube context to work on the host and the container:
127.0.0.1 kubernetes.docker.internal
# End of section
Restart the nginx
sudo nginx -s reload
note: if there is error 403 nginx, try to run this command
chmod -R 755 project
Finally, the virtual host can be use and finished
Edited
12 december 2024
I just setup in my device but I have a trouble like this: the virtual host just shown the default page (welcome to nginx). to fix this: I add listen 80;
in the top of config like
server {
listen 80;
server_name project.local;
...
}
Top comments (2)
what is the file name in server folder
up to you, but usually I name it [project_name]