系统相关
首页 > 系统相关> > php - .htaccess在Windows上工作,但是在ubuntu的apache2上不工作

php - .htaccess在Windows上工作,但是在ubuntu的apache2上不工作

作者:互联网

我在Windows的XAMPP中使用以下htaccess代码,效果很好。但是,相同的代码在Ubuntu Apache2上不起作用,
 

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/?$ /?cmd=$1&caseSno=$2 [NC,L]
RewriteRule ^([^/\.]+)/?$ /?cmd=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/?$ /?cmd=$1 [NC,L]


没有.htaccess文件,我正在使用我的网站链接,如下所示:
 
http://localhost/index.php?cmd=home


哪个工作正常。

但是在将.htaccess文件用作上述代码后,我将链接更改为:
 
http://localhost/home


但是在ubuntu中,这些规则不起作用。
任何帮助将不胜感激。

最佳答案

您可以执行以下操作:
[在终端上写以下命令]
 

sudo nano /etc/apache2/apache2.conf

Check your file if there  is any # sign before the 

AccessFilename .htaccess


删除#号。

转到以下并将“无”更改为“全部”
 
<directory /var/www/> 
   Options Indexes FollowSysLinks
   AllowOeverride None
   Require all granted
</directory>


更换
 
**AllowOverride None** to **AllowOverride All"


这就是您所做的全部。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文地址:https://stackoverflow.com/questions/25718825/

​​​​​​​

标签:RewriteCond,Windows,apache2,htaccess,程序控制,mysql,php
来源: https://blog.csdn.net/fnaleml/article/details/121849158