Manual:Short URL/Apache/ja

この命令は、Apache上の短縮URLの設定に役立ちます. また、LiteSpeedとApacheは互換性があり、似たように設定できます. また、ApacheはMediaWikiのホストに最も広く使われており、ホスト不明なMediaWikiサイトは、恐らくApacheを使っている可能性が高いでしょう.

プラン
始める前にまず、暫定的な短縮URLのパスを決める必要があります.

このマニュアルでは短縮URLのパスが以下の通りであることを前提としています. 違うパスを希望している場合、独自のパスを使用することを念頭に置いて下さい.
 * MediaWikiのディレクトリ:
 * 短縮URLの形式:

この命令は次のとおり自動化ウィザードに含まれています (MediaWiki 1.17 以降):
 * http://shorturls.redwerks.org/

もし、貴方がwikiの迅速な構成を望むか、guide confusingを見つけた場合、上のツールを試してみてください. しかし、プライベートなWikiの場合、ファイアウォールの影響で動作しないことがあります. 注意してください. しかし、LocalSettings.phpに下記の文を追加し、Wikiを一時的にパブリックにすることによって、上のツールを試すことができます. しかし設定後には、右部分を に直し忘れないでください.

これ以外の設定方法については、下記を参照ください.

Find the right file
The recommended way to set up short URLs in Apache is by editing the Apache config files. This requires that you have access to the server configuration. If you are on a shared host, you most likely don't and will need to use a  file instead. Using  files is less efficient and doesn't give you as much control when it comes to fancy setups with multiple domains but they are powerful enough to set up most short url configurations. LiteSpeed users should use the  method.

Use the instructions of one of the following two sections, depending on whether you have root access or need to use  instead.

Find the Apache configuration file (root access)
The correct config file to edit for root configs may be in one of a number of places.

Most linux distributions setup Apache with set of  folders setup. The correct config file to edit is the one in  where the configuration for your wiki has been setup. If you haven't set one up and are using the default  for your wiki setup then you can edit.

Don't forget to enable overrides by. It is disabled by default in Ubuntu 12.04 and Ubuntu 12.10.

If your distribution does not have those directories, then you should edit the Apache configuration file directly. This file should be at. Note that it used to be named, if you have a   and no   then   is the one you want to edit.

If your Apache config isn't in any of these spots you should consult the documentation for whatever system you used to install Apache, and find the location of the Apache configuration file.

If you're on a shared host without access to Apache config files you'll have to use a .htaccess file instead.

In an Apache config file you will likely have a VirtualHost block containing your wiki. If you do have one then that is the location where your rewrite rules will go. RewriteRule config does not inherit so don't put these config options in the global config if you are using a VirtualHost.

After you've setup the config as below inside Apache you're going to need to restart Apache to make it apply the new config.
 * If you are using Plesk or cPanel it should have a method of restarting the server.
 * From the command line the command is usually something like,  ,   or as on the latest Fedora releases  . These commands need to be run as root, usually by prefixing them with.

Where to put .htaccess
If you're using a  file you'll need to edit or create the file. Find the path that contains both your script path and your virtual path. Usually this means the top directory of your site, but let's look at a few examples:

Note that if you want to make a redirect from the main domain to your wiki's Main Page (e.g. http://example.org/ &rarr; http://example.org/wiki/Main_Page ). Then you always have to set up the .htaccess file in the top level, even if the other directories are nested deeper.

Setting up the rewrite rules
The first rule you'll need inside of your config is one to enable the rewrite engine:

Now we need a rule to make your article path a virtual path pointing to index.php. Be sure to replace  and   with the paths you choose in the beginning (if different).

If you are using a root url instead of a normal short url you will need to use the following instead (to ensure that existing files and directories are not seen as article, e.g. "/index.php" "/images" etc.):

Optionally, you can include a rule to show the Main Page on the path itself, to simplify navigation when people visit urls without a page title specified:

The end result should look something like this:

LocalSettings.php
We need to make the following configurations in LocalSettings.php:

If you get an "Internal error" page saying "Redirect loop detected!" after you finish configuration you may be using something other than mod_php. If so you need to explicitly turn on short urls using the following line in your LocalSettings.php: