Feature #40092 ยป 0001-Remove-FastCGI-example-files-to-drop-FastCGI-support.patch
| public/dispatch.fcgi.example | ||
|---|---|---|
| 1 |
#!/usr/bin/env ruby |
|
| 2 | ||
| 3 |
require File.dirname(__FILE__) + '/../config/boot' |
|
| 4 |
require File.dirname(__FILE__) + '/../config/environment' |
|
| 5 | ||
| 6 |
class Rack::PathInfoRewriter |
|
| 7 |
def initialize(app) |
|
| 8 |
@app = app |
|
| 9 |
end |
|
| 10 | ||
| 11 |
def call(env) |
|
| 12 |
env.delete('SCRIPT_NAME')
|
|
| 13 |
parts = env['REQUEST_URI'].split('?')
|
|
| 14 |
env['PATH_INFO'] = parts[0] |
|
| 15 |
env['QUERY_STRING'] = parts[1].to_s |
|
| 16 |
@app.call(env) |
|
| 17 |
end |
|
| 18 |
end |
|
| 19 | ||
| 20 |
Rack::Handler::FastCGI.run Rack::PathInfoRewriter.new(RedmineApp::Application) |
|
| public/htaccess.fcgi.example | ||
|---|---|---|
| 1 |
# General Apache options |
|
| 2 |
<IfModule mod_fastcgi.c> |
|
| 3 |
AddHandler fastcgi-script .fcgi |
|
| 4 |
</IfModule> |
|
| 5 |
<IfModule mod_fcgid.c> |
|
| 6 |
AddHandler fcgid-script .fcgi |
|
| 7 |
</IfModule> |
|
| 8 |
Options +FollowSymLinks +ExecCGI |
|
| 9 | ||
| 10 |
# If you don't want Rails to look in certain directories, |
|
| 11 |
# use the following rewrite rules so that Apache won't rewrite certain requests |
|
| 12 |
# |
|
| 13 |
# Example: |
|
| 14 |
# RewriteCond %{REQUEST_URI} ^/notrails.*
|
|
| 15 |
# RewriteRule .* - [L] |
|
| 16 | ||
| 17 |
# Redirect all requests not available on the filesystem to Rails |
|
| 18 |
# By default the cgi dispatcher is used which is very slow |
|
| 19 |
# |
|
| 20 |
# For better performance replace the dispatcher with the fastcgi one |
|
| 21 |
# |
|
| 22 |
# Example: |
|
| 23 |
# RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] |
|
| 24 |
RewriteEngine On |
|
| 25 | ||
| 26 |
# If your Rails application is accessed via an Alias directive, |
|
| 27 |
# then you MUST also set the RewriteBase in this htaccess file. |
|
| 28 |
# |
|
| 29 |
# Example: |
|
| 30 |
# Alias /myrailsapp /path/to/myrailsapp/public |
|
| 31 |
# RewriteBase /myrailsapp |
|
| 32 | ||
| 33 |
RewriteRule ^$ index.html [QSA] |
|
| 34 |
RewriteRule ^([^.]+)$ $1.html [QSA] |
|
| 35 |
RewriteCond %{REQUEST_FILENAME} !-f
|
|
| 36 |
<IfModule mod_fastcgi.c> |
|
| 37 |
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] |
|
| 38 |
</IfModule> |
|
| 39 |
<IfModule mod_fcgid.c> |
|
| 40 |
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] |
|
| 41 |
</IfModule> |
|
| 42 | ||
| 43 |
# In case Rails experiences terminal errors |
|
| 44 |
# Instead of displaying this message you can supply a file here which will be rendered instead |
|
| 45 |
# |
|
| 46 |
# Example: |
|
| 47 |
# ErrorDocument 500 /500.html |
|
| 48 | ||
| 49 |
ErrorDocument 500 "<h2>Application error</h2>Rails application failed to start properly" |
|