0

appacheでhttps://github.com/lencioni/SLIRをセットアップしました。htaccessファイルがあり、非常にうまく機能します。今、私はNginxに移動し、SLIRを同じように機能させたいと思っています。以下は私が変換する必要があったものです。

# Prevent other scripts from interfering with SLIR
php_value auto_prepend_file none
php_value auto_append_file none

# Pretty URLs
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [S=40]
RewriteRule . index.php [L]
</IfModule>

# Prevent viewing of the error log file in its default location
<Files slir-error-log>
Order Deny,Allow
Deny from All
</Files>

下の行以外はすべて変換できました

RewriteRule ^.*$ - [S=40]

何か案は?ありがとう

4

2 に答える 2

1

これを試して:

if (!-f $request_filename) { rewrite ^.*$ /index.php last; } # check for file
if (!-d $request_filename) { rewrite ^.*$ /index.php last; } # check for dir

私のサーバーで編集がチェックされました-この1行は(dirとfile)の両方で機能します

if (!-e $request_filename) { rewrite ^(.+)$ /index.php last; }
于 2013-03-27T12:23:13.700 に答える
0

このSフラグは、mod_rewriteに次のルールのいくつかをスキップするように指示します(あなたの場合は40です)。または、ルールを次のように変更することもできます。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]

変換する方が簡単かもしれません。

于 2013-03-27T10:51:27.510 に答える