2016-10-01 3 views
0

Хотя Codeigniter размещен на Godaddy или Speedhost, URL-адрес работает как - http://www/host_name.com/admin/home, но он не работает на экземпляре Amazon Linux AMI или даже с экземпляром Ubuntu, поскольку нам нужно ввести index.php в промежутке между URL-адресом, как показано ниже: http://www/host_name.com/index.php/admin/homeФайл с именем index.php необходим в URL-адресе

У меня есть .htaccess файл, включенный в корень проекта (здесь, admin_portal), но все равно успеха не будет. Ниже приведено содержимое моего файла .htaccess.

DirectoryIndex index.php 
RewriteEngine on 
RewriteCond $1 !^(index\.php|(.*)\.swf|forums|images|css|downloads|jquery|js|robots\.txt|favicon\.ico) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ ./index.php?$1 [L,QSA] 

Спасибо, Ravi

+0

Try с 'RewriteRule^(. *) $ index.php/$ 1 [L, QSA] 'или' RewriteRule^(. *) $ index.php?/$ 1 [L, QSA] 'или' RewriteRule^(. *) $ index.php /? $ 1 [L, QSA] 'вместо вашей последней последней строки. – Tpojka

ответ

0

Убедитесь, что вы включили mod_rewrite.

Если у апачский работает как веб-сервер, и у вас есть доступ к командной оболочке на экземплярах, вы можете использовать ...

sudo a2enmod rewrite 

перезапустите сервер

sudo service apache2 restart 
+0

Привет, Спасибо за входы .. На самом деле, он решил для меня не используя следующие настройки в /etc/httpd/conf/httpd.conf Апача сервера изменить весь AllowOverride None на AllowOverride All. –

+0

Да, это определенно поможет! – TimBrownlaw

0

Добавьте это в .htaccess:

RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_URI} ^/$ 
RewriteCond %{REQUEST_URI} !^/index.php [NC] 
RewriteRule ^$ /index.php [R=301,L]