簡體   English   中英

如何為目錄內的任何HTTP請求加載PHP文件?

[英]How can I load my PHP file for any HTTP requests inside a directory?

我已經使用PHP編寫了一段時間的代理。

現在,在我的服務器上請求類似www.mysite.com/proxy/?folder/page.html的url將返回該頁面,位於www.theirsite.com/folder/page.html

我基本上是讓我的index.php文件使用/proxy/?所有內容/proxy/? 作為www.theirsite.com的請求URI。 任何圖像都將復制到文件夾/proxy/images/並且<img>標記的src屬性也會相應更改。 所有這一切都很好。

現在,我想更改腳本,這樣就不需要了? 不再。 但是,URL www.mysite.com/proxy/folder/page.html將導致對page.html的HTTP請求,該請求在我的服務器上不存在。

這不是我想要的 我需要加載index.php ,因此它可以返回位於www.theirsite.com/folder/page.html的頁面。 為此,我想我需要使用Apache的mod_rewrite,它可以與WordPress安裝一起使用。

在仍然允許訪問/proxy/images/目錄中存在的文件的同時,我在.htaccess文件中需要做什么才能正確執行此操作? 這會完全影響$_SERVER['REQUEST_URI']嗎?

RewriteEngine on
RewriteRule   ^/$  /index.php  [R]

好吧,我按我的意願工作了。 這是我的.htaccess文件的全部內容:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /proxy/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /proxy/index.php [L]
</IfModule>

現在,對於URL www.mysite.com/proxy/folder/page.html ,已加載index.php ,並且$_SERVER['REQUEST_URI']返回/proxy/folder/page.html /proxy/文件夾或任何子文件夾中實際存在的文件不會重寫為index.php ,這是我想要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM