我用获得了.htaccess
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
我需要将其转换为nginx-conf,这很简单,但我找不到。。
我试过了:
server {
server_name ****;
root /path;
index index.html index.php;
listen 80;
# set expiration of assets to MAX for caching
location ~* .(ico|css|js|gif|jpe?g|png)(?[0-9]+)?$ {
expires max;
log_not_found off;
}
location / {
if (!-e $request_filename){
rewrite ^(.+)$ /index.php?url=$1 break;
}
}
location ~* .php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
但它下载文件而不是显示它。我不明白吗?
如果我使用,它会起作用
http://example.com/index.php?url=login
但不包括:
http://example.com/login
好的,它可以使用:
location / {
try_files $uri $uri/ /index.php?url=$uri;
}