我已经在Digitalocean (nginx)上设置了一个Laravel应用程序。
当我访问site.com时它可以正常工作,但当我访问www.site.com时它无法加载
我的问题是我应该如何设置DNS记录在Digitalocean,我应该如何设置/etc/nginx/sites-available/default文件:
- www.site.com/path应该重定向到site.com/path。
- 所有的子域名都应该指向主应用程序站点。
- media.site.com请参考其他目录。
谢谢!
现在的文件:
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/www/hzofe/public;
index index.php index.html index.htm;
server_name localhost;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ .php$ {
try_files $uri /index.php =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
server {
listen 80;
listen [::]:80 ipv6only=on;
server_name media.site.com;
....
}
server {
listen 80;
listen [::]:80 ipv6only=on;
server_name *.site.com;
....
}
您是否尝试为DNS重定向添加cname记录?
此外,如果您使用https,您可以为别名域和常规的let -encrypt创建一个证书。
这是一个nodejs教程,但它可能会有所帮助…
https://code.lengstorf.com/deploy-nodejs-ssl-digitalocean/install-nginx