2015-12-11 32 views
0

我需要做到這一點使用htaccess的htaccess的變化要求的文件名

當一個請求爲http://www.example.com/home,但是應當(內部)加載頁面http://www.example.com/home_st.php

同樣,當一個請求到另一條鏈路稱爲產品製造(http://www.example.com/products),它應該(內部)加載http://www.example.com/products_st.php

總之,它所做的是追加「_st.php」並加載該URL。但有一件事我不想要的是,如果用戶在瀏覽器中直接鍵入http://www.example.com/home_st.phphttp://www.example.com/products_st.php,它應該顯示404 /頁面未找到錯誤

我在那個文件夾中有幾個其他頁面,我希望這些頁面在此行爲方式。我明白htaccess的應該有這樣的事情

  1. 打開改寫
  2. 禁止人們進入如果URL被調用,像home_st.php頁面名稱,products_st.php等
  3. 如果它的「家」或「產品」,然後分別重寫(附加?)到home_st.php和products_st.php。我有其他文件的同時也需要遵循相同的

PN:我的網址不應該顯示的實際文件名,例如home_st.php,products_st.php等它應該只顯示爲http://www.example.com/homehttp://www.example.com/products

htaccess和正則表達式不是我熟悉的東西。任何幫助都會很棒。由於

+0

我認爲這是不可能的,因爲如果你將你的原始文件重定向到404,那麼重寫後的url也將指向404。 – starkeen

回答

2

您希望能夠重新寫入網址的

此之前已經寫,但我要再說一遍。

您想要使用Htaccess文件和重寫規則。

RewriteEngine On # Turn on the rewriting engine 
RewriteRule ^pet-care/?$ pet_care_info_01_02_2008.php [NC,L] # Handle requests for "pet-care" 

這將使這個網址:http://www.pets.com/pet_care_info_07_07_2008.php

像這樣:http://www.pets.com/pet-care/

更多信息的鏈接:How to make Clean URLs

,併爲我所用,從引用此信息的網頁:https://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/

爲了讓你的頁面按照你想要的方式設置,我wou ld建議您閱讀兩篇文章,並嘗試獲取您正在尋找的內容。

如果您需要某些特定的幫助,請詢問。

希望有所幫助。