jdxyzlh 发表于 2017-12-25 13:36:51

linux服务器中Apache隐藏index.php失败

  可以通过URL重写隐藏应用的入口文件index.php,下面是相关服务器的配置参考:
  【Apache】


[*]httpd.conf配置文件中加载了mod_rewrite.so模块
[*]AllowOverride None 将None改为 All (PS:所有的AllowOverride对应的None都改为ALL)
[*]把下面的内容保存为.htaccess文件放到应用入口文件的同级目录下
  

<IfModule mod_rewrite.c>  
Options
+FollowSymlinks -Multiviews  
RewriteEngine on
  

  
RewriteCond
%{REQUEST_FILENAME} !-d  
RewriteCond
%{REQUEST_FILENAME} !-f  
RewriteRule
^(.*)$ index.php?/$1   

</IfModule>  

  以上操作全部都完成,重启apache后还是失败,原因在与include的【httpd-vhosts.conf】中配置没有改成允许URL重写。
  只需将
  

DocumentRoot "F:/wamp/www/test"  

  
ServerName www
.test.com  

  
ServerAlias admin
.tpshop.com  

  
DirectoryIndex index
.html index.htm index.php  

  
Options FollowSymLinks
  

  
AllowOverride none
  

  
Order allow
,deny  

  
Allow from all
  

  改成
  

DocumentRoot "F:/wamp/www/test"  

  
ServerName www
.test.com  

  
ServerAlias admin
.tpshop.com  

  
DirectoryIndex index
.html index.htm index.php  

  
Options FollowSymLinks
  

  
AllowOverride All
  

  
Order allow
,deny  

  
Allow from all
  

  然后保存,重启apache就可以了。
页: [1]
查看完整版本: linux服务器中Apache隐藏index.php失败