Moin,uWSGI&nginx – 在<my-domain> / wiki中设置

我正在尝试使用子目录在我们的nginx / uWSGI服务器上设置MoinMoin Wiki安装。

我们已经有一个运行在80的Django应用程序。 最初,我使用自己的服务器块运行Moin应用程序:8000。 这工作得很好,但是,我们想要的是在/ wiki下运行MoinMoin。

问题是,当我尝试这样做时,MoinMoin仍然认为它是根,所以它认为/ wiki是一个名为wiki的页面。 所有的链接也是相对的,所以点击它们失败,因为nginx没有看到/ FrontPage的位置等。

我看了,但找不到任何明显的configurationMoinMoin使用/维基的方法。 这就是我所需要的,无论是或者某种方式来映射/维基到:8000

这里是我们的nginx.conf文件的http部分(注意:用/ path /前缀replacepath)

http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for" t=$request_time'; access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location /media { alias /path/to/lib/python2.6/site-packages/django/contrib/admin/media/; } location /static { alias /path/to/static/; } location /tmp/reports { internal; alias /tmp/reports; } location / { include uwsgi_params; uwsgi_pass 127.0.0.1:9001; } location /wiki/moin_static193 { alias /path/to/lib/python2.6/site-packages/MoinMoin/web/static/htdocs; } location /wiki { uwsgi_pass 127.0.0.1:9002; include wiki_params; } } } 

这里是大多未经编辑的wikiconfig.py文件:

 import os from MoinMoin.config import multiconfig, url_prefix_static class Config(multiconfig.DefaultConfig): # Critical setup --------------------------------------------------- # Directory containing THIS wikiconfig: wikiconfig_dir = os.path.abspath(os.path.dirname(__file__)) # We assume that this config file is located in the instance directory, like: # instance_dir/ # wikiconfig.py # data/ # underlay/ # If that's not true, feel free to just set instance_dir to the real path # where data/ and underlay/ is located: #instance_dir = '/where/ever/your/instance/is' instance_dir = wikiconfig_dir # Where your own wiki pages are (make regular backups of this directory): data_dir = os.path.join(instance_dir, 'data', '') # path with trailing / # Where system and help pages are (you may exclude this from backup): data_underlay_dir = os.path.join(instance_dir, 'underlay', '') # path with trailing / # The URL prefix we use to access the static stuff (img, css, js). # Note: moin runs a static file server at url_prefix_static path (relative # to the script url). # If you run your wiki script at the root of your site (/), just do NOT # use this setting and it will automatically work. # If you run your wiki script at /mywiki, you need to use this: url_prefix_static = '/wiki' + url_prefix_static # Wiki identity ---------------------------------------------------- # Site name, used by default for wiki name-logo [Unicode] sitename = u'Our Wiki' # Wiki logo. You can use an image, text or both. [Unicode] # For no logo or text, use '' - the default is to show the sitename. # See also url_prefix setting below! logo_string = u'<img src="%s/common/moinmoin.png" alt="MoinMoin Logo">' % url_prefix_static # name of entry page / front page [Unicode], choose one of those: # a) if most wiki content is in a single language #page_front_page = u"MyStartingPage" # b) if wiki content is maintained in many languages #page_front_page = u"FrontPage" # The interwiki name used in interwiki links #interwikiname = u'UntitledWiki' # Show the interwiki name (and link it to page_front_page) in the Theme, # nice for farm setups or when your logo does not show the wiki's name. #show_interwiki = 1 # Security ---------------------------------------------------------- # This is checked by some rather critical and potentially harmful actions, # like despam or PackageInstaller action: superuser = [u"UserName", ] # IMPORTANT: grant yourself admin rights! replace YourName with # your user name. See HelpOnAccessControlLists for more help. # All acl_rights_xxx options must use unicode [Unicode] acl_rights_before = u"UserName:read,write,delete,revert,admin" # The default (ENABLED) password_checker will keep users from choosing too # short or too easy passwords. If you don't like this and your site has # rather low security requirements, feel free to DISABLE the checker by: #password_checker = None # None means "don't do any password strength checks" # Link spam protection for public wikis (Uncomment to enable) # Needs a reliable internet connection. #from MoinMoin.security.antispam import SecurityPolicy # Mail -------------------------------------------------------------- # Configure to enable subscribing to pages (disabled by default) # or sending forgotten passwords. # SMTP server, eg "mail.provider.com" (None to disable mail) #mail_smarthost = "" # The return address, eg u"J?rgen Wiki <[email protected]>" [Unicode] #mail_from = u"" # "user pwd" if you need to use SMTP AUTH #mail_login = "" # User interface ---------------------------------------------------- # Add your wikis important pages at the end. It is not recommended to # remove the default links. Leave room for user links - don't use # more than 6 short items. # You MUST use Unicode strings here, but you need not use localized # page names for system and help pages, those will be used automatically # according to the user selected language. [Unicode] navi_bar = [ # If you want to show your page_front_page here: #u'%(page_front_page)s', u'RecentChanges', u'FindPage', u'HelpContents', ] # The default theme anonymous or new users get theme_default = 'modern' # Language options -------------------------------------------------- # See http://moinmo.in/ConfigMarket for configuration in # YOUR language that other people contributed. # The main wiki language, set the direction of the wiki pages language_default = 'en' # the following regexes should match the complete name when used in free text # the group 'all' shall match all, while the group 'key' shall match the key only # eg CategoryFoo -> group 'all' == CategoryFoo, group 'key' == Foo # moin's code will add ^ / $ at beginning / end when needed # You must use Unicode strings here [Unicode] page_category_regex = ur'(?P<all>Category(?P<key>(?!Template)\S+))' page_dict_regex = ur'(?P<all>(?P<key>\S+)Dict)' page_group_regex = ur'(?P<all>(?P<key>\S+)Group)' page_template_regex = ur'(?P<all>(?P<key>\S+)Template)' # Content options --------------------------------------------------- # Show users hostnames in RecentChanges show_hosts = 1 # Enable graphical charts, requires gdchart. #chart_options = {'width': 600, 'height': 300} 

uwsgi_param SCRIPT_NAME / wiki;

uwsgi_modifier1 30;

在位置/ wiki指令

然后加

– 忽略脚本的名称

在uWSGI命令行中