我已在digitalocean上的云VPS上安装了LEMP堆栈。我在我的根域安装了WordPress,然后将laravel安装在WordPress内的文件夹中,如此。
http://www.mydomain.com(WordPress) http://www.mydomain.com/larapp(Laravel安装)
之前我在LAMP堆栈上,一切正常。然后我迁移到LEMP堆栈,应用程序停止工作。
我已经尝试了2天,但没有成功。这是我到目前为止所取得的成就。
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/www/mydomain;
index index.php index.html index.htm;
server_name mydomain.com www.mydomain.com;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location /larapp/.+\.php$ {
rewrite ^/larapp/(.*)$ /larapp/index.php?$1 last;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
当我访问网址http://www.mydomain.com/larapp/时,我会看到索引页面。但是当我访问larapp中的任何其他网址时,我会收到WordPress 404错误,因为所有网址都会先通过WordPress进行路由。
如何让laravel app urls正常运行。此外,我想将所有非www请求重定向到www。当我请求laravel网址时(WordPress非www请求被重定向到www,但laravel非www请求不会被重定向)。
任何帮助都将不胜感激。