More docs on Apache
This commit is contained in:
parent
1a30c2ab58
commit
f982ad8ee8
41
Apache.md
41
Apache.md
|
@ -8,7 +8,7 @@ For kirsle.net I needed to set it up using `mod_fcgid` because my site has a lot
|
|||
of legacy URLs to old static files, so Rophako needs to serve the main website
|
||||
pages and Apache needs to serve everything else.
|
||||
|
||||
* Apache configuration:
|
||||
## Apache configuration:
|
||||
|
||||
```apache
|
||||
# Rophako www.kirsle.net
|
||||
|
@ -36,7 +36,9 @@ pages and Apache needs to serve everything else.
|
|||
</VirtualHost>
|
||||
```
|
||||
|
||||
* `~/www/.htaccess` configuration:
|
||||
## .htaccess configuration:
|
||||
|
||||
This goes in `~/www/.htaccess`
|
||||
|
||||
```apache
|
||||
<IfModule mod_rewrite.c>
|
||||
|
@ -48,3 +50,38 @@ pages and Apache needs to serve everything else.
|
|||
RewriteRule ^$ /fcgi/index.fcgi/ [QSA,L]
|
||||
</IfModule>
|
||||
```
|
||||
|
||||
## FastCGI script
|
||||
|
||||
This is my FastCGI script I wrote to launch Rophako. Important things to note:
|
||||
|
||||
* The shebang line points to the Python binary in my virtualenv.
|
||||
* I modify sys.path and chdir to my git checkout folder for Rophako.
|
||||
* The `ScriptNameStripper` allows `mod_rewrite` to work best. Without it you'll
|
||||
sometimes get URL paths like `/fcgi/index.fcgi/blog/entry/...` etc. from Flask
|
||||
because that's what it thinks its path is.
|
||||
|
||||
```python
|
||||
#!/home/kirsle/.virtualenv/rophako/bin/python
|
||||
|
||||
import os
|
||||
import sys
|
||||
sys.path.append("/home/kirsle/git/rophako")
|
||||
os.chdir("/home/kirsle/git/rophako")
|
||||
|
||||
from flup.server.fcgi import WSGIServer
|
||||
from rophako import app
|
||||
|
||||
class ScriptNameStripper(object):
|
||||
def __init__(self, app):
|
||||
self.app = app
|
||||
|
||||
def __call__(self, environ, start_response):
|
||||
environ["SCRIPT_NAME"] = ""
|
||||
return self.app(environ, start_response)
|
||||
|
||||
app = ScriptNameStripper(app)
|
||||
|
||||
if __name__ == "__main__":
|
||||
WSGIServer(app).run()
|
||||
```
|
||||
|
|
Loading…
Reference in New Issue
Block a user