Manual:URL Curto

This page is a translated version of the page Manual:Short URL and the translation is 26% complete.
Outdated translations are marked like this.
This article is about URL structure. For creating short URLs for articles, see Extensão:ShortUrl . For creating a URL shortening service, see Extension:UrlShortener .

URLs curtas ou URL Rewrites esconder extensões de ficheiros php a partir do endereço da página.

Reserve alguns minutos para criar uma estrutura de URL estável para seu site antes de começar, para não enfrentar problemas mais tarde.

Introdução

Geral

O caminho de instalação padrão do MediaWiki geralmente se parece com isto:

/var/www/html/mediawiki (instalado como utilizador root)
/home/johndoe/public_html/mediawiki (Instalado com um provedor de hospedagem compartilhada)


Os endereços de páginas padrão do MediaWiki se assemelham a esses exemplos:

https://example.org/w/index.php/Page_title (Versões recentes do MediaWiki, sem suporte a [[w:Common Gateway Interface] (CGI)])
https://example.org/w/index.php?title=Page_title (Versões recentes do MediaWiki, com suporte CGI)


Usando os métodos descritos nesta página, podemos configurar algo como isto:

https://example.org/wiki/Page_title

Esta é a configuração mais comum usado na Wikipedia, embora não seja o padrão, pois requer modificações no lado do servidor

https://example.org/view/Page_title
https://wiki.example.org/view/Page_title
https://example.org/Page_title
https://wiki.example.org/Page_title

Some people do not recommend the last two configurations. See Manual:Wiki in site root directory for potential problems and solutions.

Vantagens e desvantagens

  • Vantagens: URLs curtas escondem todos os detalhes técnicos, é a melhor prática para URLs - entre outras coisas isso significa que elas podem ser mantidas estáveis quando o software subjacente muda.

(See above for the difference between MediaWiki's default URL structure with CGI enabled vs without.) Eles também são mais fáceis de ler, lembrar e manipular para os visitantes. Além disso, as URLs curtas são melhores do que o padrão para a SEO porque as URLs incluem ? menos para SEO.

  • Disadvantage: Requires configuration, so, depending on the hosting environment you are using, it might be difficult to recreate.

However, as every widely used webserver is capable of being configured to use short URLs, most paid web hosting services should support this feature. Any host that doesn't offer you this feature is not worth your money.

Guias

Our official guides for short URL configuration for different web servers. Pick your web server's configuration from this list. If you don't know what server software you are using, then it is most likely Apache.

Outros miniguias para "Como fazer..."

These guides are old and are almost entirely bad advice. These will eventually be deleted one by one as our official guides above are created for different webservers.

Anyone is welcome to create a how-to solution page and list it below. Please use a sensible name for the page, one that fits in with the below names. When each unique solution has its own page, readers can skip complexity they do not want. Keep it simple, readable, short, with a separate page per separate solution.

To help others find out which Short URL methods really work, after trying each method please edit the page and increase the "worked" or "didn't_work" numbers for that guide and make a brief (or long, your choice) description on what went wrong by clicking the link on your number.

URL como - exemplo.com/wiki/Titulo_da_pagina

Actions such as edit, view history, etc. will still have index.php unless $wgActionPaths are defined.

Acesso de root

These methods require that you have access to the server configuration. If you are on a shared host, you most likely don't. In this case you will be required to use a method that requires "no root access". You can jump directly to the MediaWiki ShortURL Builder tool and follow the on-screen instructions. Select "I don't have root access" after entering your wiki's URL.

(for Apache guidance, see the link in the Guides section).

URL like - example.com/Page_title

Some people do not recommend this configuration. See Manual:Wiki in site root directory for potential problems and solutions.

How to create example.com/Page_title URLs:

URL like - wiki.example.com/Page_title

Some people do not recommend this configuration. See Manual:Wiki in site root directory for potential problems and solutions.

How to create wiki.example.com/Page_title URLs:


Resolução de Problemas

Ampersand (&) problem

The ampersand problem shows up when you have page titles with symbols in them (such as &, ?, #, + and /) which, despite being correctly encoded in the link, are not being passed correctly from mod_rewrite to the script. This manifests in 404 page-not-found errors, because the title gets cut off at the special character. For example, clicking on a link to "John & Maria's page" gets a 404, because MediaWiki is looking for a page named "John ".

This is because ampersands in long-form names are treated as query string separators, and would never reach the PHP runtime environment. This is caused by an old and problematic mod_rewrite bug.[1]

Soluções:

This issue is caused by the ?title=$1 portion of rewrite rules like /index.php?title=$1 which is completely unnecessary and harmful. MediaWiki parses paths directly from the REQUEST_URI, so rewrite everything to /index.php.

Limpar cache

If you notice that your changes to $wgArticlePath in LocalSettings.php are not being reflected in example.com/wiki/Main_Page, it may be due to MediaWiki's caching of the links according to previous settings.

Go to example.com/wiki/Main_Page?action=purge to force MediaWiki to regenerate the cached links.

Also you can:

  1. execute the MySQL query "TRUNCATE objectcache;", or
  1. Ensure $wgCacheEpoch is updated (if $wgInvalidateCacheOnLocalSettingsChange is enabled, all you have to do is edit LocalSettings.php to purge it)

Redirecionar o visitante do seu domínio para a sua wiki

Our official guides for short url configuration include recommendations on how to point the root of your site to your wiki using your short url config.

For example our Apache guide recommends using this to point your site root to your wiki:

RewriteRule ^/*$ %{DOCUMENT_ROOT}/w/index.php [L]

Note that we do not recommend doing a HTTP redirect to your wiki path or main page directly. As redirecting to the main page directly will hard-code variable parts of your wiki's page setup into your server config. And redirecting to the wiki path will result in two redirects. Simply rewrite the root path to MediaWiki and it will take care of the 301 redirect to the main page itself.

If using VirtualHosts, place the rewrite rules into the virtual host declaration!

Mover uma wiki de /wiki para /w

A common beginner's mistake is to install MediaWiki itself (the source code, not the short URL) in /wiki instead of /w. Once installed they would realize the mistake when trying to configure Short URLs (which would become difficult as the virtual path then conflicts with the real path).

There is a manual for moving a wiki in general, however that is too complicated if all you need is to change the installation directory (and stay on the same server, same database and same hostname).

Here is what you have to do:

  • Backup LocalSettings.php and any other config files you may have created (such as your .htaccess).
  • Rename the installation directory of MediaWiki on your server from /wiki to /w.
  • Set $wgScriptPath in LocalSettings.php to "/w" and remove (or comment out) any definition of $wgArticlePath (this variable will be changed again when setting up Short URLs, further on)
  • At this point your wiki should be working normally at example.org/w
  • Perform a few tests on your wiki to make sure nothing is broken.

Edit a page, visit a few different pages, etc. If anything seems abnormal, revert the changes by restoring your backup of LocalSettings.php and other relevant files you might have changed during configuration of short URLs and rename your folder back to /wiki.

Note for shared hosting users: Many shared hosting plans offer an application manager to automatically Install, Update and Backup applications such as MediaWiki. If your plan has this and if you want to keep using these features, you should contact their tech support and let them know you just manually changed your MediaWiki installation directory.

Truques

Ver também

  • $wgUsePathInfo - configuration setting that defines whether to use 'pretty' URLs or not
  • $wgActionPaths - configuration setting that you can use to define 'pretty' URLs for other actions, like edit or history

Hiperligações externas

  • MediaWiki Short URL Builder Tool - A tool that can automatically generate a short url configuration more reliably than the configurations in these manual pages.

Referências

  1. Bugzilla mod_rewrite for ampersand bug, partially resolved for some users, but only after 13 years