所以我试图将应用程序从 apache 移动到 NginX,但我发现我需要重新编写 .htaccess 文件,我已经环顾四周,但最后我需要寻求帮助。
下面是来自 apache 的 .htaccess 文件,我试图将所有请求重定向到 index.php,但对 /html、/css、/images、/php 的请求除外。
提前感谢您的帮助!账单
RewriteEngine on
RewriteRule ^html [L,NC]
RewriteRule ^css [L,NC]
RewriteRule ^images [L,NC]
RewriteRule ^php [L,NC]
RewriteRule ^.*$ index.php [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !directory/(.*)$
RewriteCond %{REQUEST_URI} !(.*)$
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
到目前为止,我有以下内容,对 html、css、图像和 php 文件的请求运行良好。
但是,当我向 www.domain.com/blah/blah/blah/ 发出请求时,我得到了 404,我真正想要的是将 URL 重新命名为 www.domain.com/blah/blah/blah/ 但加载index.php 文件
location ~ directory/(.*)$ {
}
location ~ (.*)$ {
}
location /html {
rewrite ^/html / break;
}
location /css {
rewrite ^/css / break;
}
location /images {
rewrite ^/images / break;
}
location /php {
rewrite ^/php / break;
}
location / {
rewrite ^(.*)$ /index.php break;
if (!-e $request_filename){
rewrite ^(.*)$ http://www.domain.com/$1 redirect;
}
}