一點解釋,然後2個問題....現代重寫和重定向目錄
基本上我建立一個單一頁面顯示手機媒體(由標籤,按類型,等等。等等。) 。所有的媒體上傳&由我標記,所以我不是爲了內容或依賴第三方服務(twitter,facebook,flickr,imgur等)。我做的最有JS的工作(RequireJS模塊...)和我利用ToroPHP一種簡單,重量輕&寧靜的API
我的最終目標是:
允許用戶返回到輸入網址如:/或//,並始終加載我的根index.php(維護網址)。與此同時,我需要可用的API中的幾個子目錄 獲取數據:
- /資產/(CSS,字體文件,精靈或SVG圖標)
- /組件/(用於RequireJS腳本)
- /API /(這只是具有ToroPHP實例的API子目錄)
我相信下面的代碼片段解決了這個問題(我在想,如果我能得到什麼這是一個很好的解釋是做盡管?我已經從互聯網上的片段拼湊在一起):
RewriteEngine on
RewriteRule ^/?assets/.+$ - [L]
RewriteRule ^/?components/.+$ - [L]
RewriteRule ^/?api/.+$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php)
RewriteRule ^(.*)$ /index.php [L]
此外,我希望你能幫助我想出一個辦法,只允許我的「應用程序」(即,內部電話(有沒有在Apache服務器用戶?)由RequireJS模塊發起的API )有權訪問/ assets/&/components/&/api /因此,如果用戶鍵入/ api/test?subject = 123,它們將被路由到不是index.php的頁面,但不是實際的API也是。我希望這與/ components/&/assets /也是一樣的。
*總結問題:
1)。幫助解釋上面的代碼片段。 2)。我可以允許我的服務器訪問/ assets/&/components/&/api /但不允許用戶輸入它們嗎?
顯然,Apache並不是我的專長,但我對學習有相當的信心。
謝謝!