如何在服务器中设置mod_rewrite

时间:2015-03-30 01:38:38

标签: php codeigniter mod-rewrite codeigniter-hmvc

我的应用程序中有这样的.htaccess文件。 (只有安全样本)

<IfModule mod_rewrite.c>

   RewriteEngine On
   RewriteBase /app_folder/ 

   #Removes access to the system folder by users.
   #Additionally this will allow you to create a System.php controller,
   #previously this would not have been possible.
   #'system' can be replaced if you have renamed your system folder.
   RewriteCond %{REQUEST_URI} ^system.*
   RewriteRule ^(.*)$ /index.php?/$1 [L]

   #When your application folder isn't in the system folder
   #This snippet prevents user access to the application folder
   #Submitted by: Fabdrol
   #Rename 'application' to your applications folder name.
   RewriteCond %{REQUEST_URI} ^application.*
   RewriteRule ^(.*)$ /index.php?/$1 [L]

   #Checks to 
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule ^(.*)$ index.php?/$1 [L]    

</IfModule>

<IfModule !mod_rewrite.c>
   # If we don't have mod_rewrite installed, all 404's
   # can be sent to index.php, and everything works as normal.
   # Submitted by: ElliotHaughin

   ErrorDocument 404 /index.php

</IfModule>

在(Rewritebase / app_folder /)中,如果我的应用程序在服务器中,我将在app_folder名称中放入什么?我应该将主机名放在app_folder中吗?例如

  Rewritebase /http://example.com/

因为我的app_folder现在是我的webroot。我是使用CentOS在服务器上传HMVC codeigniter设置的新手。

1 个答案:

答案 0 :(得分:1)

在Ubuntu(linux)中:

在终端中运行:

a2enmod rewrite

然后:

service apache2 restart

现在将启用mod_rewrite!

<小时/> 在Windows(wamp)

您可以手动编辑httpd.conf文件

left click wampmanager -> Apache -> httpd.conf

这将在记事本中打开该文件,您可以找到该行  #LoadModule rewrite_module modules / mod_rewrite.so 并删除评论符号&#39;#&#39;激活模块。然后保存文件并重新启动Apache以激活此更改。