我只是推出我的第一Magento的店(在CentOS &的Apache),我已經從我的設置子域切換 - http://prelive.mydomain.com(這裏的一切工作正常,與URL重寫啓用&工作) - 到現場的子域http://www.mydomain.com,基本上只是通過執行以下操作:通過管理界面 改變Magento的領域打破URL重寫
- 清除緩存
- UPDATE core_config_data SET value ='http://www.mydomain.co.uk/'WHERE path ='web/unsecure/base_url';
- UPDATE core_config_data SET value ='https://www.mydomain.co.uk/'WHERE path ='web/secure/base_url';
- 將整個站點文件系統從/ var/www/html/prelive移動到/ var/www/html/www(我嘗試複製,但它導致了各種權限問題,後面我會想到! )
- 手動編輯在VAR/resource_config.json
介質基座路徑更新我的虛擬主機這樣的:
<VirtualHost *:80> DocumentRoot /var/www/html/www ServerName www.mydomain.co.uk ServerAlias www.mydomain.co.uk ErrorLog logs/www.mydomain.co.uk-error_log </VirtualHost>
編輯這樣)基.htaccess文件(
SetEnvIf Host www\.mydomain.co.uk MAGE_RUN_CODE=angling_r_en SetEnvIf Host www\.mydomain.co.uk MAGE_RUN_TYPE=store SetEnvIf Host ^mydomain.co.uk MAGE_RUN_CODE=angling_r_en SetEnvIf Host ^.mydomain.co.uk MAGE_RUN_TYPE=store
它幾乎可以工作......但URL重寫被打破。我可以看到http://www.mydomain.com的網站,但導航到子頁面得到一個404(例如http://www.mydomain.com/path/to/product.html),除非我特意改變URL通過這樣http://www.mydomain.com/index.php/path/to/product.html或http://www.mydomain.com/index.php/admin
供參考的index.php點,在.htaccess中我也有(什麼我忘了
RewriteBase/
和
RewriteRule .* index.php [L]
任何想法:子域的切換)期間保持不變?
非常感謝 本
謝謝Yrcrz - 有道理(我認爲我已經將它們全部重建了...) - 當我做管理界面_says_''目錄URL重寫索引被重建。「但它沒有區別。你知道那些存儲在哪裏嗎?也許它實際上並沒有重建它們......? – 2013-04-04 16:27:03
我也應該說這是我看到的一個Apache 404頁面,除了主頁以外的每個頁面。它就像mod_rewrite剛剛停止工作,但爲什麼!! ?? :[ – 2013-04-04 16:33:09
只需要確認,如果我在系統>配置>網絡>搜索引擎優化中關閉「使用Web服務器重寫」,那麼所有的工作都是完美的......它只是重寫而已。 – 2013-04-04 21:33:52