php - htaccess是否可能無法使用 index.php url

  显示原文与译文双语对照的内容
128 3

是否可以能不能使用 index.php.I 在中添加 index.php 。 如果有人在url中添加了 index.php,它不應該嘗試很多方法。 我已經試過了,但我已經試過了。


RewriteEngine On


RewriteCond %{REQUEST_FILENAME}!-f


RewriteCond %{REQUEST_FILENAME}!-d


RewriteRule ^(.*)$ index.php/$1 [L]



用於 e.g

如果我使用下面的url,這應該是。。

 
`example.com/abc`



 

如果我使用下面的網址不應該工作


`example.com/index.php/abc`



时间: 原作者:

125 1

在 root 目錄中創建。htaccess文件並將這裡代碼保存到它的目錄中


<IfModule mod_rewrite.c>


RewriteEngine On


RewriteCond %{REQUEST_FILENAME}!-f


RewriteCond %{REQUEST_FILENAME}!-d


RewriteRule ^(.*)$ index.php/$1 [L] 


</IfModule>



打開 application/config/config.php


//find the below code 


$config['index_page'] ="index.php" 


//replace with the below code


$config['index_page'] =""



/find the below code


$config['uri_protocol'] ="AUTO"


//replace with the below code


$config['uri_protocol'] ="REQUEST_URI" 



原作者:
85 3

Config.php


$config['base_url'] = 'http://localhost/Appsite/website/';


$config['index_page'] = '';



# If Live site


# $config['base_url'] = 'http://stackoverflow.com/';



.htaccess


RewriteEngine on


RewriteCond $1!^(index.php|assets|image|resources|robots.txt)


RewriteCond %{REQUEST_FILENAME}!-f


RewriteCond %{REQUEST_FILENAME}!-d


RewriteRule ^(.*)$ index.php?/$1 [L,QSA]



在另外一個問題上檢查我的答案:用設置基本 URL

原作者:
119 1

可以使用:


RewriteEngine On



# 403 Forbidden for index.php


RewriteCond %{THE_REQUEST} index.php [NC]


RewriteRule ^ - [F]



# Rewrite to index.php


RewriteCond %{REQUEST_FILENAME}!-f


RewriteCond %{REQUEST_FILENAME}!-d


RewriteRule ^(.*)$ index.php/$1 [L]



原作者:
124 2

嘗試以下代碼。

更改 config.php 中的下列內容


$config['index_page'] =""


$config['uri_protocol'] ="REQUEST_URI"



現在打開。htaccess文件,並用 below 代碼替換。


RewriteEngine on


RewriteCond $1!^(index.php|resources|robots.txt)


RewriteCond %{REQUEST_FILENAME}!-f


RewriteCond %{REQUEST_FILENAME}!-d


RewriteRule ^(.*)$ index.php/$1 [L,QSA]



如果 上面 索引行不工作,則用新代碼替換行。 因為。htaccess依賴於伺服器


//Replace last. htaccess line with this line


 RewriteRule ^(.*)$ index.php?/$1 [L,QSA]



原作者:
54 2

試試下面的規則


RewriteEngine On


RewriteCond %{REQUEST_FILENAME}!-f


RewriteCond %{REQUEST_FILENAME}!-d


RewriteRule ^(.*)$ index.php/$1 [L,END]



RewriteRule ^index.php* - [F]



原作者:
129 4

你說 url shouldn't work 應該重定向到另一個或者被替換是什麼意思?

如果鏈接已經被索引,請告訴用戶,如果鏈接已經被索引,告訴爬蟲這是 404 not found 頁面,並且它將停止索引該頁面。 你不能完全禁用 index.php/foo,因為所有請求都通過 index.php ( 我相信,如果你正在使用路由)

這裡是替換示例- https://htaccess.madewithlove.be?share=04dcf45c-32e9-5c29-b706-5869cd369ffd

輸入 url http://ex.com/index.php/abc


RewriteEngine On


RewriteRule index.php/(.*)/404 [L] #send user to not found page


RewriteCond %{REQUEST_FILENAME}!-f


RewriteCond %{REQUEST_FILENAME}!-d



RewriteRule ^(.*)$ index.php/$1 [L]



輸出 url http://ex.com/404

115 0

在 index.php的頂部添加下面的代碼。 我想這可以解決你的問題。


if(strpos($_SERVER['REQUEST_URI'],'index.php')!== false){


 header('location: http://xyx.com/404');


 die();


}



...