Rumah pembangunan bahagian belakang tutorial php ThinkPHP32URL重写隐藏应用的入口文件indexphp

ThinkPHP32URL重写隐藏应用的入口文件indexphp

Jul 29, 2016 am 08:55 AM
index quot request rewrite

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

[ Apache ]

  1. httpd.conf配置文件中加载了mod_rewrite.so模块
  2. AllowOverride None 将None改为 All
  3. 把下面的内容保存为.htaccess文件放到应用入口文件的同级目录下
<ol>
<li><code><span><ifmodule><span>mod_rewrite</span><span>.</span><span>c</span><span>></span></ifmodule></span></code></li>
<li><code><span> RewriteEngine on</span></code></li>
<li><code><span> RewriteCond %{REQUEST_FILENAME} !-d</span></code></li>
<li><code><span> RewriteCond %{REQUEST_FILENAME} !-f</span></code></li>
<li><code><span> RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]</span></code></li>
<li><code><span></span></code></li>
</ol>
Salin selepas log masuk

[ IIS ]

如果你的服务器环境支持ISAPI_Rewrite的话,可以配置httpd.ini文件,添加下面的内容:

<ol><li><code><span>RewriteRule</span><span>(.*)</span><span>$ </span><span>/</span><span>index\.php\?s</span><span>=</span><span>$1 </span><span>[</span><span>I</span><span>]</span></code></li></ol>
Salin selepas log masuk

在IIS的高版本下面可以配置web.Config,在中间添加rewrite节点:

<ol>
<li><code><span><rewrite></rewrite></span></code></li>
<li><code><span><rules></rules></span></code></li>
<li><code><span><rule><span>name</span><span>=</span><span>"OrgPage"</span><span>stopProcessing</span><span>=</span><span>"true"</span><span>></span></rule></span></code></li>
<li><code><span><match><span>url</span><span>=</span><span>"^(.*)$"</span><span>/></span></match></span></code></li>
<li><code><span><conditions><span>logicalGrouping</span><span>=</span><span>"MatchAll"</span><span>></span></conditions></span></code></li>
<li><code><span><add><span>input</span><span>=</span><span>"{HTTP_HOST}"</span><span>pattern</span><span>=</span><span>"^(.*)$"</span><span>/></span></add></span></code></li>
<li><code><span><add><span>input</span><span>=</span><span>"{REQUEST_FILENAME}"</span><span>matchType</span><span>=</span><span>"IsFile"</span><span>negate</span><span>=</span><span>"true"</span><span>/></span></add></span></code></li>
<li><code><span><add><span>input</span><span>=</span><span>"{REQUEST_FILENAME}"</span><span>matchType</span><span>=</span><span>"IsDirectory"</span><span>negate</span><span>=</span><span>"true"</span><span>/></span></add></span></code></li>
<li><code><span></span></code></li>
<li><code><span><action><span>type</span><span>=</span><span>"Rewrite"</span><span>url</span><span>=</span><span>"index.php/{R:1}"</span><span>/></span></action></span></code></li>
<li><code><span></span></code></li>
<li><code><span></span></code></li>
<li><code><span></span></code></li>
</ol>
Salin selepas log masuk

[ Nginx ]

在Nginx低版本中,是不支持PATHINFO的,但是可以通过在Nginx.conf中配置转发规则实现:

<ol>
<li><code><span>  location </span><span>/</span><span>{</span><span>// …..省略部分代码</span></code></li>
<li><code><span>if</span><span>(!-</span><span>e $request_filename</span><span>)</span><span>{</span></code></li>
<li><code><span>   rewrite  </span><span>^(.*)</span><span>$  </span><span>/</span><span>index</span><span>.</span><span>php</span><span>?</span><span>s</span><span>=</span><span>$1  </span><span>last</span><span>;</span></code></li>
<li><code><span>break</span><span>;</span></code></li>
<li><code><span>}</span></code></li>
<li><code><span>}</span></code></li>
</ol>
Salin selepas log masuk

其实内部是转发到了ThinkPHP提供的兼容模式的URL,利用这种方式,可以解决其他不支持PATHINFO的WEB服务器环境。

如果你的ThinkPHP安装在二级目录,Nginx的伪静态方法设置如下,其中youdomain是所在的目录名称。youdomain需要按照入口文件index.php的目录来确定。

<ol>
<li><code><span>location </span><span>/</span><span>youdomain</span><span>/</span><span>{</span></code></li>
<li><code><span>if</span><span>(!-</span><span>e $request_filename</span><span>){</span></code></li>
<li><code><span>        rewrite  </span><span>^</span><span>/youdomain/</span><span>(.*)</span><span>$  </span><span>/</span><span>youdomain</span><span>/</span><span>index</span><span>.</span><span>php</span><span>?</span><span>s</span><span>=</span><span>$1  </span><span>last</span><span>;</span></code></li>
<li><code><span>}</span></code></li>
<li><code><span>}</span></code></li>
</ol>
Salin selepas log masuk

原来的访问URL:

http://serverName/index.php/模块/控制器/操作/[参数名/参数值...]

设置后,我们可以采用下面的方式访问:

http://serverName/模块/控制器/操作/[参数名/参数值...]

默认情况下,URL地址中的模块不能省略,如果你需要简化某个模块的URL访问地址,可以通过设置模块列表和默认模块或者采用子域名部署到模块的方式解决,请参考后面的模块和域名部署部分。

以上就介绍了ThinkPHP32URL重写隐藏应用的入口文件indexphp,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah fail index.html? Apakah fail index.html? Feb 19, 2024 pm 01:36 PM

index.html mewakili fail halaman utama halaman web dan merupakan halaman lalai tapak web. Apabila pengguna melawat tapak web, halaman index.html biasanya dimuatkan dahulu. HTML (HypertextMarkupLanguage) ialah bahasa penanda yang digunakan untuk membuat halaman web dan index.html juga merupakan fail HTML. Ia mengandungi struktur dan kandungan halaman web, serta teg dan elemen yang digunakan untuk pemformatan dan reka letak. Berikut ialah contoh kod index.html: &lt

php request什么意思 php request什么意思 Jul 07, 2021 pm 01:49 PM

request的中文意思为“请求”,是php中的一个全局变量,是一个包含了“$_POST”、“$_GET”和“$_COOKIE”的数组。“$_REQUEST”变量可以获取POST或GET方式提交的数据、COOKIE信息。

Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x Jul 30, 2023 am 11:28 AM

Cara menggunakan fungsi urllib.request.urlopen() dalam Python3.x untuk menghantar permintaan GET Dalam pengaturcaraan rangkaian, kita selalunya perlu mendapatkan data daripada pelayan jauh dengan menghantar permintaan HTTP. Dalam Python, kita boleh menggunakan fungsi urllib.request.urlopen() dalam modul urllib untuk menghantar permintaan HTTP dan mendapatkan respons yang dikembalikan oleh pelayan. Artikel ini akan memperkenalkan cara menggunakan

Apakah objek Permintaan dalam PHP? Apakah objek Permintaan dalam PHP? Feb 27, 2024 pm 09:06 PM

Objek Permintaan dalam PHP ialah objek yang digunakan untuk mengendalikan permintaan HTTP yang dihantar oleh klien ke pelayan. Melalui objek Permintaan, kami boleh mendapatkan maklumat permintaan pelanggan, seperti kaedah permintaan, maklumat pengepala permintaan, parameter permintaan, dsb., untuk memproses dan membalas permintaan tersebut. Dalam PHP, anda boleh menggunakan pembolehubah global seperti $_REQUEST, $_GET, $_POST, dll. untuk mendapatkan maklumat yang diminta, tetapi pembolehubah ini bukan objek, tetapi tatasusunan. Untuk memproses maklumat permintaan dengan lebih fleksibel dan mudah, anda boleh

Cara penulisan semula nginx melaksanakan lompatan URL Cara penulisan semula nginx melaksanakan lompatan URL Jun 03, 2023 am 11:55 AM

Lompat URL Lompatan URL yang disebutkan di sini adalah untuk melompat ke URL lain apabila pengguna mengakses satu URL. Senario aplikasi biasa ialah membenarkan berbilang nama domain melompat ke URL yang sama (contohnya, biarkan nama domain lama melompat ke nama domain baharu), lompat permintaan fail statik ke CDN, dsb. Lompat ke tapak berbeza mengikut peranti pengguna (versi PC), versi wap), dsb. Lompatan URL boleh dicapai dengan menetapkan tetingkap.lokasi pada halaman dengan js atau dengan menetapkan tajuk dengan php Sudah tentu, ia juga boleh dilaksanakan menggunakan fungsi penulisan semula nginx Modul penulisan semula nginx ialah modul penulisan semula statik nginx . Penggunaan asas ialah rewritepattenre.

Bagaimana untuk merangkum pemintas Vue3 Axios ke dalam fail permintaan Bagaimana untuk merangkum pemintas Vue3 Axios ke dalam fail permintaan May 19, 2023 am 11:49 AM

1. Cipta fail baharu yang dipanggil request.js dan import Axios: importaxiosfrom'axios' 2. Cipta fungsi yang dipanggil permintaan dan eksportnya: Ini akan mencipta fungsi yang dipanggil permintaan dan mengeksportnya Sediakan contoh Axios baharu dengan URL asas . Untuk menambah tetapan tamat masa dalam tika Axios yang dibalut, anda boleh lulus pilihan tamat masa apabila membuat tika Axios. exportconstrequest=axios.create({baseURL:'https://example.

Peranan dan kepentingan Permintaan dalam PHP Peranan dan kepentingan Permintaan dalam PHP Feb 27, 2024 pm 12:54 PM

Peranan dan kepentingan Permintaan dalam PHP Dalam pengaturcaraan PHP, Permintaan adalah mekanisme untuk menghantar permintaan ke pelayan Web Ia memainkan peranan penting dalam pembangunan Web. Permintaan digunakan terutamanya untuk mendapatkan data yang dihantar oleh pelanggan, seperti penyerahan borang, GET atau POST permintaan, dll. Melalui Permintaan, input data oleh pengguna boleh diperolehi, dan data boleh diproses dan dijawab. Artikel ini akan memperkenalkan peranan dan kepentingan Permintaan dalam PHP dan memberikan contoh kod khusus.

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

See all articles