Tôi đã tìm kiếm một cách dễ dàng để lấy ServerName của máy nơi Symfony chạy trong Symfony (để ứng dụng của tôi thích nghi khi nó được sử dụng trên một máy chủ với một ServerName khác), nhưng tôi không thể tìm thấy nó. Tôi tạo ra một biến trong app.yml và tôi lấy nó, nhưng tôi vẫn tự hỏi nếu không có cách nào dễ dàng hơn để làm điều này. Bạn làm như thế nào? Tôi đang sử dụng Symfony 1.2 và 1.4 trên các dự án khác nhau.Có cách nào dễ dàng để lấy ServerName trong Symfony không?
Trả lời
tôi nghĩ rằng tôi tìm thấy một cái gì đó:
$this->getRequest()->getHost()
điều này dường như làm việc ... nó sẽ chỉ làm việc nó ở đó là một yêu cầu tất nhiên, vì vậy nó không phải là phổ quát.
Một đồng nghiệp chỉ nói với tôi rằng chúng tôi không nên dựa vào điều này, bởi vì có rất nhiều rủi ro. Ông cho rằng thiết lập trong tập tin YML là giải pháp tốt nhất ... – greg0ire
bạn có thể giải thích về rủi ro không? :-) – Flukey
Có hai trường hợp mà bạn không muốn dựa vào hệ thống như vậy: - khi bạn không sử dụng apache (khi gửi thư qua cronjob chẳng hạn) - khi bạn có nhiều máy chủ nhưng bạn muốn để quảng bá mua trang web của bạn chỉ bằng một trong số họ. – greg0ire
Không phải rất tốt đẹp, nhưng tôi sử dụng $_SERVER["SERVER_NAME"]
trong tập tin điều khiển phía trước của tôi, và sử dụng để xác định môi trường Tôi đang kích hoạt:
$env = "prod";
if (preg_match("/qahost\.tld$/", $_SERVER["SERVER_NAME"]))
{
$env = "qa";
}
$configuration = ProjectConfiguration::getApplicationConfiguration('frontend', $env, false);
sfContext::createInstance($configuration)->dispatch();
Tôi muốn được quan tâm để xem cách tiếp cận đúng đắn : -)
- 1. Có cách nào dễ dàng để sử dụng InternalsVisibleToAttribute?
- 2. Cách dễ dàng để lấy id Vimeo từ url vimeo
- 3. Có cách nào dễ dàng hơn để bắt đầu thời gian trong ngày hiện tại không?
- 4. Có cách nào dễ dàng để thực hiện chuỗi thụt lề đa dòng trong Ruby không?
- 5. Có cách nào dễ dàng để lấy dữ liệu người dùng AuthComponent từ một khung nhìn trong CakePHP không?
- 6. Cách dễ dàng để sử dụng FindControl ("")
- 7. Có cách nào dễ dàng để trộn hai giá trị System.Drawing.Color không?
- 8. Có cách nào dễ dàng để tạo bí danh lệnh trong mysql không?
- 9. Có cách nào dễ dàng để triển khai AutoResetEvent trong C++ 0x không?
- 10. Có cách nào dễ dàng hơn để ký một tài liệu XML trong Java không?
- 11. Có cách nào dễ dàng để tách HTML khỏi QString trong Qt không?
- 12. Có cách nào dễ dàng để đánh giá JavaScript trong WebStorm không?
- 13. Có cách nào dễ dàng để chuyển đổi văn bản thành HTML trong JavaScript không?
- 14. Có cách nào dễ dàng để biết số tiền được dành để đợi GIL Python không?
- 15. Lấy kích thước ứng dụng exe dễ dàng
- 16. Trong PHP, có cách nào dễ dàng để có được ngày đầu tiên và cuối cùng của một tháng không?
- 17. Cách dễ dàng để tìm Subtree trong Tree
- 18. Có cách nào dễ dàng để hoàn nguyên toàn bộ danh sách thay đổi P4 không?
- 19. Có cách nào dễ dàng để xóa biểu mẫu ASP.NET không?
- 20. Có cách nào dễ dàng để tích hợp jshint với netbeans không?
- 21. Có cách nào dễ dàng để loại trừ các tệp mà FuzzyFinder tìm kiếm không?
- 22. Có cách nào dễ dàng để làm cho gcc bỏ qua crtbegin.o/crtend.o không?
- 23. Có cách nào dễ dàng để chuyển đổi "do/end" và "{}" trong ruby trong Vim?
- 24. Cách dễ dàng để làm mới ListBox trong WPF?
- 25. Có cách nào dễ dàng để tạo mã từ một tệp văn bản không?
- 26. Hibernate constraint ConstraintViolationException. Có cách nào dễ dàng để bỏ qua các mục trùng lặp không?
- 27. Có cách nào dễ dàng để thêm một IList <MyType> cho người khác không?
- 28. Có cách nào dễ dàng để chuyển đổi một Boolean thành một số nguyên không?
- 29. Có cách nào dễ dàng để hợp nhất hai chuỗi được sắp xếp bằng LINQ không?
- 30. Cách dễ dàng để kiểm tra xem mục có nằm trong danh sách không?
Bạn không thể sử dụng gethostname()? http://php.net/manual/en/function.gethostname.php – mamoo
Xin lỗi, tôi không muốn tên máy chủ trên thực tế, nhưng Tên máy chủ (Tôi đã chỉnh sửa bài đăng của mình) – greg0ire