Tôi có một ứng dụng PHP cũ đang chạy với Apache, bây giờ tôi cần chuyển sang sử dụng Nginx
quy tắc chuyển hướng htaccess
php_value upload_max_filesize "5M"
AddType text/x-component .htc
Viết LạiEngine Trên
RewriteBase /brand/kit/summer-icecream/lacne
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(/admin/)
RewriteCond %{REQUEST_URI} !(/setup/)
RewriteCond %{REQUEST_URI} !(/support/)
RewriteCond %{REQUEST_URI} !(/share/)
RewriteCond %{REQUEST_URI} !(/rss/)
RewriteCond %{REQUEST_URI} !(/output/)
RewriteCond %{REQUEST_URI} !(/upload/)
RewriteCond %{REQUEST_URI} !(/app_api/)
RewriteRule ^(.+)\.php$share/admin/$1.php [L]
RewriteRule app_api/(.+)\.php$share/app_api/$1.php [L]
Tôi đã thử một số cách để chuyển hướng như bên dưới nhưng có vẻ như nó không hoạt động, nó không chuyển tệp PHP sang PHP-FPM
vị trí ~ brand/kit/summer-icecream/lacne/(.+)\.php$ {
nếu (!-e $request_filename){
viết lại ^/brand/kit/summer-icecream/lacne/(.+)\.php$ /brand/kit/summer-icecream/lacne/share/admin/$1.php chuyển hướng;
}
}
vị trí ~ (.+)\.php$ {
try_files $uri =404;
fastcgi_pass fastcgi_backend;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
bao gồm fastcgi_params;
fastcgi_read_timeout 600s;
fastcgi_connect_timeout 600s;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param HTTP_HOST $host;
bao gồm /etc/nginx/fastcgi_config;
}
Để thử nghiệm, URI yêu cầu là:
http://127.0.0.1:8989/brand/kit/summer-icecream/lacne/login.php