我想用NGINX建立一個CodeIgniter項目。但是,它已經是在線的網站,例如test.com。這意味着該項目也有$config['base_url'] = 'test.com'
。但是,當我想要設置NGINX服務器塊時,我必須根據this post定義與base_url
中的域相同的服務器名稱。但是,我希望網址test.dev用於開發,test.com只需鏈接到在線網站。我如何實現這一目標?不同的網站開發和生產
回答
創建環境。 Handling Multiple Environments
在你的index.php找到這樣一行說
//define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');
在該行發生在目錄名稱檢查並粘貼此代碼
switch(dirname(__FILE__))
{
case 'Path\of\your\live\server\folder':
define('ENVIRONMENT','production');
break;
case 'path\of\your\local\folder':
define('ENVIRONMENT','development');
break;
}
現在你有一個全局變量的環境,有價值觀生產或發展。你可以在這個變量上放置一個開關,並在config.php中給base_url賦值,或者在database.php中爲DB憑證選擇活動組。
在CI中,您可以爲您正在使用的每個環境定義一個config.php
文件。 在您的config
文件夾中,創建一個development
文件夾,其中您將config.php
文件與您需要的base_url
一起放入。然後,在該環境中,CI將使用該新文件而不是主文件config.php
。
顯然我在這之前和nginx有一個不同的問題。有關更多詳細信息,請參閱@ shafiq的答案。 – Stan
設置您的環境變量。 https://www.codeigniter.com/user_guide/general/environments.html 爲您的生產
define('ENVIRONMENT','production');
和發展
define('ENVIRONMENT','production');
,並在您的配置文件,您可以檢查這樣或任何顯然,我有一個不同的問題與變量
if(ENVIRONMENT == 'development'){
$config['base_url'] = 'test.dev';
}else{
$config['base_url'] = 'test.com';
}
我試過這個,但是目前我的test.dev給出了「問題加載頁面」。 'access.log'和'error.log'也不顯示任何請求。我的'/ etc/nginx/sites-available/test.dev'文件就像原始文章中的鏈接所示。我還創建了「啓用網站」的符號鏈接。我究竟做錯了什麼? – Stan
將'127.0.0.1 test.com'添加到我的'/ etc/hosts'文件導致de「Welcome to nginx!」網站,當我嘗試訪問test.com。換句話說,它現在重定向到默認頁面。 – Stan
我認爲這可能是您的虛擬主機設置問題。 http://stackoverflow.com/questions/15489919/nginx-static-index-redirect – shafiq
- 1. 同步Drupal網站之間的開發,分期和生產
- 2. 配置WordPress網站的開發,分期和生產版本
- 3. 配置兼容的開發和生產網站
- 4. 開發與生產的不同路徑
- 5. 開發和生產
- 6. Facebook的登錄:有幾個網站的網址爲開發,測試和生產
- 7. 網站不再生產
- 8. 的Rails:開發和生產
- 9. ASP.NET網站開放產生錯誤
- 10. 爲不同語言開發ASP.NET網站
- 11. 爲什麼開發和生產模式導致不同的網頁?
- 12. 如何使用不同的@Injectable進行開發和生產
- 13. Rails在開發和生產中的路由有所不同
- 14. 實體框架和不同的環境(開發/生產)
- 15. 在生產和開發環境中使用不同的陳述
- 16. Laravel用於生產和開發的不同config/database.php
- 17. Android上開發和生產期間的不同配置值
- 18. 配置Rails在開發和生產中使用不同的js
- 19. 用於開發和生產的不同種子
- 20. 在angularjs中使用不同的域進行開發和生產
- 21. 不同於測試和生產環境的開發環境?
- 22. Rails:在開發和生產上的不同行爲
- 23. 在開發和生產環境中使用不同的Web.config
- 24. 如何爲開發和生產配置不同的dockerfile
- 25. Yaml :: load_file在開發和生產之間的行爲不同(Rails)
- 26. 開發和生產環境
- 27. Javascript「開發」和「生產
- 28. 開發Sqlite3和生產mysql2
- 29. GWT - Log4j - 開發和生產
- 30. 並行Wordpress開發/生產站點
nginx在此之前。有關更多詳細信息,請參閱他的答案@shafiq。 – Stan