Вопрос о перезаписи URL-адреса Apache для начинающих

Я просто пытаюсь выяснить, на правильном ли я пути - буду признательна за дополнительную информацию о переписывании URL-адреса в моем примере.

Я установил программу CMS и просто хотел бы, чтобы www.example.com указывал на www.example.com/cms. Я просто хочу знать, является ли переписывание URL-адресов через apache лучшим способом для этого?

Спасибо.


person Community    schedule 18.05.2009    source источник


Ответы (2)


Просто перенаправьте http://example.com/ на http://example.com/cms:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewritRule ^/?$ /cms/
</IfModule>

Перенаправление всех URL-адресов, которые в противном случае имели бы 404d, чтобы начинаться с /cms/:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ /cms/$1 [L]
</IfModule>

Перенаправление всех URL-адресов на /cms/:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^(.*)$ /cms/$1 [L]
  <Directory /var/www/html/cms/> #change this to the correct path
    RewriteEngine Off
  </Directory>
</IfModule>
person elzapp    schedule 18.05.2009

Это определенно подход, который я бы выбрал. Я предполагаю, что вы используете Apache, хотя это можно легко сделать и с IIS. Вам нужно будет отредактировать файл .htaccess в корневом каталоге, чтобы сделать это с помощью mod_rewrite.

<IfModule mod_rewrite.c>

   RewriteEngine on

   RewriteRule    ^(.*)$ /cms/$1  [L]

</IfModule>

Это должно работать для того, что вам нужно. Измените «cms» на любой каталог, в который вы хотите переписать.

person S Pangborn    schedule 18.05.2009