Smarty .htaccess重写(来自nginx)

Smarty .htaccess重写(来自nginx)

问题描述:

I want to add Apache .htaccess rules. This is from old server's nginx:

    location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
}

    location / {
    if (-f $request_filename) {
        break;
    }
    if (-d $request_filename) {
        break;
    }
    rewrite ^/(.*) /index.php?demand=$1;
}

How to rewrite this? All I am getting now is index page and the rest of files are not found. I am really hoping to get some help here, thanks.

我想添加Apache .htaccess规则。 这是来自旧服务器的nginx: p>

  location~ \ .php $ {
 fastcgi_split_path_info ^(。+ \。php)(/。+)$; 
 fastcgi_pass unix  :/var/run/php5-fpm.sock; 
 fastcgi_index index.php; 
包括fastcgi_params; 
} 
 
位置/ {
 if(-f $ request_filename){
 break; 
  } 
 if(-d $ request_filename){
 break; 
} 
 rewrite ^ /(.*)/index.php?demand=$1;
}
  pre> \  n 
 

如何重写这个? 我现在得到的只是索引页面,找不到其余的文件。 我真的希望在这里得到一些帮助,谢谢。 p> div>

The rewrite part should simply be:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?demand=$1 [L]

To force the use of https, add this before the above rules:

RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Here is converter from nginx to apache http://labs.gidix.de/nginx/