URL переписать не работает сервер Ubuntu
В настоящее время я работаю с PHP- скриптом, но он все еще содержит недружелюбную ссылку (cms.php?Cms=login
).
Я хочу превратить это в дружескую ссылку
/cms/login
у меня есть .htaccess
файл создан
RewriteEngine On
RewriteRule ^cms/([^/]*)$ /cms.php?cms=$1 [L]
Но когда в настоящее время перейти на страницу, я вижу это:
мой /etc/apache2/sites-available/default
файл:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Также сделал это:
sudo a2enmod rewrite
sudo service apache2 reload
rewrite.load
файл:
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
Я смотрел на многих форумах, но я не могу найти его. Сервер Ubuntu работает на openvz (Ubuntu 12.10)
Где вина? что я должен делать?
1 ответ
Попробуй это:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^cms\login$ cms.php?Cms=login [L]
</IfModule>
Вы должны заметить, что вы печатаете cms.php?Cms=login
с "C" в верхнем регистре, это отличается от "C" в нижнем регистре.