Have a proper README
This commit is contained in:
parent
2b19be3a57
commit
13d8961556
60
README.md
60
README.md
|
@ -1,10 +1,68 @@
|
||||||
# rails-reverse-proxy
|
# rails-reverse-proxy
|
||||||
|
|
||||||
|
Gives you the ability to reverse proxy within Rails.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
You know the drill. In your Gemfile, have the line
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem 'rails-reverse-proxy'
|
||||||
```
|
```
|
||||||
gem install rails-reverse-proxy
|
|
||||||
|
Then (you guessed it!)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
$ bundle
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
An example usage of this gem is hosting a WordPress site on a path within your Rails application, such as `/blog`. To do this, you'll need something like
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
class WordpressController < ApplicationController
|
||||||
|
include ReverseProxy::Controller
|
||||||
|
|
||||||
|
def index
|
||||||
|
# Assuming the WordPress server is being hosted on port 8080
|
||||||
|
reverse_proxy "http://localhost:8080" do |config|
|
||||||
|
# We got a 404!
|
||||||
|
config.on_missing do |code, response|
|
||||||
|
redirect_to root_url and return
|
||||||
|
end
|
||||||
|
|
||||||
|
# There's also other callbacks:
|
||||||
|
# - on_set_cookies
|
||||||
|
# - on_response
|
||||||
|
# - on_set_cookies
|
||||||
|
# - on_success
|
||||||
|
# - on_redirect
|
||||||
|
# - on_missing
|
||||||
|
# - on_error
|
||||||
|
# - on_complete
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
```
|
||||||
|
|
||||||
|
Then in your `routes.rb` file, you should have something like
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
match 'blog/*path' => 'wordpress#index', via: [:get, :post, :put, :patch, :delete]
|
||||||
|
```
|
||||||
|
|
||||||
|
You can also pass options into `reverse_proxy`
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
reverse_proxy "http://localhost:8000", path: "custom-path", headers: { 'X-Foo' => "Bar" }
|
||||||
|
```
|
||||||
|
|
||||||
|
Sorry if these instructions are sparse. Feel free to reach out or read the source!
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
All pull requests will become first class citizens.
|
||||||
|
|
||||||
## Copyright
|
## Copyright
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue