0

I had installed wiki on my server. Lets say I have a domain name www.nikunj.com.

So installed wiki at this location www.nikunj.com/wiki.

Now I am trying to achieve that when any user types wiki.nikunj.com, he/she will see my installed wiki on www.nikunj.com/wiki.

4

2 回答 2

2

这个问题应该在您的网络服务器配置中解决。

我想重定向

Apache HTTPD 服务器

如果您使用 Apache,您可以为 wiki.nikunj.com 创建第二个 VirtualHost,目的是重定向到 www.nikunj.com/wiki。

使用 mod_rewrite:

<VirtualHost *:80>
    ServerName wiki.nikunj.com
    RewriteEngine on
    RewriteRule ^/(.*) http://www.nikunj.com/wiki/$1 [R,L]
</VirtualHost>

使用 mod_alias:

<VirtualHost *:80>
    ServerName wiki.nikunj.com
    RedirectMatch ^/(.*) http://www.nikunj.com/wiki/$1
</VirtualHost>

Nginx

在这种情况下,Nginx 语法更直观:

server {
    server_name wiki.nikunj.com
    rewrite ^ http://www.nikunj.com$request_uri? permanent;
}

我想将 URL 保留在 wiki 中。

阿帕奇

你需要 mod_rewrite 和 mod_proxy。然后,它会是这样的:

<VirtualHost *:80>
    ServerName wiki.nikunj.com
    RewriteEngine on
    RewriteRule ^/(.*) http://www.nikunj.com/wiki/$1 [R,L,P]
</VirtualHost>

Nginx

server {
    server_name wiki.nikunj.com
    proxy_pass http://www.nikunj.com/wiki;
}

短网址呢?

在这种情况下,您可以使用短 URL。

您将需要两条规则而不是一条,一条用于文章(例如 /view/$1),一条用于其他 index.php 链接。

提示: last在 Nginx 和[L]Apache HTTPD 中意味着当前规则是最后执行的。这将允许您避免两个规则一个接一个地执行。

文档

于 2013-01-16T16:22:00.160 回答
1

您需要阅读的页面(假设您正在使用“mediawiki”)是这个页面,它描述了您可用的各种选择。

于 2013-01-16T15:48:51.013 回答