EyouCms去除URL中的index.php
[重要通告]如您遇疑難雜癥,本站支持知識付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時(shí)間哦!
今天看到了一個(gè)不錯(cuò)的CMS,那就是EyouCms,但是在調(diào)試的時(shí)候,中間多出了index.php,具體看圖,那如何除去呢?下面也給出方法;
針對不同服務(wù)器、虛擬空間,運(yùn)行PHP的環(huán)境也有所不同,目前主要分為:Nginx、apache、IIS以及其他服務(wù)器。下面分享如何去掉URL上的index.php字符,記得在管理后臺清除緩存,對于一些ECS服務(wù)器可能要重啟nginx等服務(wù)!
【IIS服務(wù)器】
查看服務(wù)器的網(wǎng)站根目錄下是否有 web.config 文件,將紅色代碼添加<system.webServer>與</system.webServer>之間。如果沒有web.config文件,就將全部代碼保存為web.config文件,上傳到網(wǎng)站根目錄下,記得去后臺清除緩存,再從網(wǎng)站首頁訪問哦!
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="OrgPage" stopProcessing="true"> <match url="^(.*)$" /> <conditions logicalGrouping="MatchAll"> <add input="{HTTP_HOST}" pattern="^(.*)$" /> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="index.php/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
【Nginx服務(wù)器】
在原有的nginx重寫文件里新增以下代碼片段:
location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; break; } }
如果是安裝在二級目錄下,請復(fù)制以下代碼:
location /二級目錄名/
{ if (!-e $request_filename) { rewrite ^/二級目錄名/(.*)$ /二級目錄名/index.php?s=/$1 last; break; } }
如果類似阿里云空間,一個(gè)虛擬主機(jī)的根目錄與二級目錄都安裝了易優(yōu),那么設(shè)置如下:
location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; break; } }
location /二級目錄名/
{ if (!-e $request_filename) { rewrite ^/二級目錄名/(.*)$ /二級目錄名/index.php?s=/$1 last; break; } }
【apache服務(wù)器】
易優(yōu)CMS在apache服務(wù)器環(huán)境默認(rèn)自動隱藏index.php入口。
如果發(fā)現(xiàn)沒隱藏,可以檢查根目錄.htaccess是否含有以下紅色代碼段:
<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine on #http跳轉(zhuǎn)到https #RewriteCond %{HTTPS} !=on #RewriteRule ^(.*)$ https://%{SERVER_NAME}/$1 [R,L] RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?s=/$1 [QSA,PT,L] </IfModule>
如果還是沒有隱藏,可以嘗試把紅色第四行的代碼改為加上個(gè)問號試試: RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
或者修改為:RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
如果還是不行,繼續(xù)查看apache是否開啟了URL重寫模塊 rewrite_module , 然后重啟服務(wù)就行了。
問題未解決?付費(fèi)解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當(dāng)無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!