Reescrita de URL

Bom dia.

Utilizamos a versão 3.1.2.4 do OJS.

Gostaria de saber como faço para remover o “index.php” da URL e, preciso saber como redirecionar as URLs antigas para um novo padrão que será o atual.

Olá @andersonvm,

Isso depende mais das configurações do servidor web do módulo de reescrita do que no OJS.
Caso possa realizar essa configuração, tu podes criar um .htaccess com a configuração apropriada.

Por gentileza, acesse esse tópico da comunidade internacional, veja toda a discussão e teste a solução propostas.

Lá basicamente tem duas configurações que devem ser realizadas:

  1. parte do config.inc.php

    base_url = “http://mydomain.com
    disable_path_info = Off

    base_url[journal1] = http://mydomain.com/journal1
    base_url[journal2] = http://mydomain.com/journal2
    base_url[journal3] = http://journal3.mydomain.com
    base_url[journal4] = http://journal4.mydomain.com

    restful_urls = On

  2. conteúdo .htaccess

    RewriteEngine On
    RewriteBase /

    List of actual folders I want to access (like http://mydomain.com/folder1/)

    RewriteRule ^(folder1|folder2|folder3)($|/) - [L]

    Redirect www.mydomain.com to mydomain.com

    RewriteCond %{HTTP_HOST} ^www.(.)$ [NC]
    RewriteRule ^(.
    )$ http://%1/$1 [R=301,L]

    Remove index.php

    RewriteCond %{SERVER_NAME} ^mydomain.com
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php/$1 [L]

    Handle api calls in subdomains

    RewriteCond %{SERVER_NAME} ^([a-z0-9-]+).mydomain.com$ [NC]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} api/v1/
    RewriteRule ^(.*)$ index.php/%1/$1 [L]

    Handle subdomains

    RewriteCond %{SERVER_NAME} ^([a-z0-9-]+).mydomain.com$ [NC]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php/%1/$1 [L]

Faça o Backup dos arquivos de configuração e faça o teste.
Acesse o tópico fonte para informações mais detalhadas.

1 curtida