DataMoney.net

Linux-Apache-URL-Rewite-访问路径重定向只有首页能访问,其他页面访问不了

andy发表:

#>1现象
	如果只有index.php可以访问/index.php同级文件也能访问,其他页面apache提示404.
#>2
	如果你的index.php目录下没有.htaccess这个文件请拿去摆好再重启.
<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] </IfModule>
#>3先开启解决问题 sudo a2enmod rewrite//重启apache service apache2 restart//service httpd restart 或者 systemctl apache2 restart//systemctl httpd restart #4原因分析 现代框架基本上都会重写url.就是访问 http://localhost/user/login.php,这个文件不一定在根目录/user/下, 当然login.php文件里要引用的js/css/html路径也未必一是真的. #>5为什么 为了安全,不能让人一眼看到我的网站根目录及各级目录.如果敌人了解你,就能更有效的进攻你.所以你得隐藏得改写.重新弄一套url和文件的对应关系.一个网站80万url怎么管.你别担心.框架就是改好了,你得再看看所用框架路由规则/静态规则就明白了. #>6题外话 有人会觉得我太笼统或不细致,因为快速理解和解决问题是我的出发点. 我想能发现这些问题的人,一不需要读.二你应该能正确理解的我用意. 设身处地,如你有更好的方式,让不懂的人快速明白和处理问题,请告知我