我已经安装了siwapp发票软件。它安装成功,但当我尝试使用定期配置文件或甚至向我的客户发送发票时,出现错误说:
Warning: fsockopen() [function.fsockopen]: unable to connect to localhost:25 (Connection refused) in /home/olepress/public_html/my/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Transport/StreamBuffer.php on line 233
Warning: Cannot modify header information - headers already sent by (output started at /home/olepress/public_html/my/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Transport/StreamBuffer.php:233) in /home/olepress/public_html/my/lib/vendor/symfony/lib/response/sfWebResponse.class.php on line 336
Warning: Cannot modify header information - headers already sent by (output started at /home/olepress/public_html/my/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Transport/StreamBuffer.php:233) in /home/olepress/public_html/my/lib/vendor/symfony/lib/response/sfWebResponse.class.php on line 357
Warning: Cannot modify header information - headers already sent by (output started at /home/olepress/public_html/my/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Transport/StreamBuffer.php:233) in /home/olepress/public_html/my/lib/vendor/symfony/lib/response/sfWebResponse.class.php on line 357
我试图搜索它,有很多问题类似于我的问题,但我不太确定我们是否使用相同的软件。试图玩这个软件的源文件,我发现这个配置文件包含:
test:
storage:
class: sfSessionTestStorage
param:
session_path: %SF_TEST_CACHE_DIR%/sessions
response:
class: sfWebResponse
param:
send_http_headers: false
mailer:
param:
delivery_strategy: none
all:
routing:
class: sfPatternRouting
param:
generate_shortest_url: true
extra_parameters_as_query_string: true
user:
class: SiwappUser
param:
timeout: 1800
logging: %SF_LOGGING_ENABLED%
use_flash: true
default_culture: %SF_DEFAULT_CULTURE%
#all:
# controller:
# class: sfFrontWebController
#
# request:
# class: sfWebRequest
# param:
# logging: %SF_LOGGING_ENABLED%
# path_info_array: SERVER
# path_info_key: PATH_INFO
# relative_url_root: ~
# formats:
# txt: text/plain
# js: [application/javascript, application/x-javascript, text/javascript]
# css: text/css
# json: [application/json, application/x-json]
# xml: [text/xml, application/xml, application/x-xml]
# rdf: application/rdf+xml
# atom: application/atom+xml
#
# response:
# class: sfWebResponse
# param:
# logging: %SF_LOGGING_ENABLED%
# charset: %SF_CHARSET%
# send_http_headers: true
#
# user:
# class: myUser
# param:
# timeout: 1800
# logging: %SF_LOGGING_ENABLED%
# use_flash: true
# default_culture: %SF_DEFAULT_CULTURE%
#
# storage:
# class: sfSessionStorage
# param:
# session_name: symfony
#
# view_cache:
# class: sfFileCache
# param:
# automatic_cleaning_factor: 0
# cache_dir: %SF_TEMPLATE_CACHE_DIR%
# lifetime: 86400
# prefix: %SF_APP_DIR%/template
#
# i18n:
# class: sfI18N
# param:
# source: XLIFF
# debug: false
# untranslated_prefix: "[T]"
# untranslated_suffix: "[/T]"
# cache:
# class: sfFileCache
# param:
# automatic_cleaning_factor: 0
# cache_dir: %SF_I18N_CACHE_DIR%
# lifetime: 31556926
# prefix: %SF_APP_DIR%/i18n
#
# routing:
# class: sfPatternRouting
# param:
# load_configuration: true
# suffix: ''
# default_module: default
# default_action: index
# debug: %SF_DEBUG%
# logging: %SF_LOGGING_ENABLED%
# generate_shortest_url: false
# extra_parameters_as_query_string: false
# cache:
# class: sfFileCache
# param:
# automatic_cleaning_factor: 0
# cache_dir: %SF_CONFIG_CACHE_DIR%/routing
# lifetime: 31556926
# prefix: %SF_APP_DIR%/routing
#
# logger:
# class: sfAggregateLogger
# param:
# level: debug
# loggers:
# sf_web_debug:
# class: sfWebDebugLogger
# param:
# level: debug
# condition: %SF_WEB_DEBUG%
# xdebug_logging: true
# web_debug_class: sfWebDebug
# sf_file_debug:
# class: sfFileLogger
# param:
# level: debug
# file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%.log
我在这里错过了什么吗?我该如何解决这个问题?
答案 0 :(得分:0)
检查该应用程序的配置:您必须配置要使用的邮件服务器(smtp服务器)。在使用其他软件时,为其提供发送邮件的服务器的地址。
答案 1 :(得分:0)
如果您使用的是linux,请尝试在服务器上安装sendmail,(debian / ubuntu sudo apt-get install sendmail
,(rhat / centos yum install sendmail
)。
如果您拥有Gmail或ISP等外部SMTP服务器的凭据,则应该能够在找到的配置文件中指定主机详细信息和凭据,请参阅sending mail in siwapp的文档。
您可以使用类似于以下配置的SMTP:
prod:
...
mailer:
param:
delivery_strategy: realtime
transport:
param:
host: smtp.gmail.com
port: 465
encryption: ssl
username: your_gmail_username@gmail.com
password: your_gmail_password
要使用PHP sendmail,请使用以下配置:
prod:
...
mailer:
param:
delivery_strategy: realtime
transport:
class: Swift_MailTransport
要编辑的配置文件是siwapp/config/factories.yml
希望有所帮助。
答案 2 :(得分:0)
我知道这个帖子已经老了,但我终于找到了解决这个非常严重错误的方法。
siwapp的安装说明有点......很多,整个画面很难得到。我已经平均编译了这些笔记
将factories.yml文件复制到配置文件夹
cp <siwapp_root>/apps/siwapp/config/factories.yml <siwapp_root>/config/factories.yml
修改您的产品部分
prod:
...
mailer:
param:
delivery_strategy: realtime
transport:
param:
host: smtp.gmail.com
port: 465
encryption: ssl
username: your_email_address@gmail.com
password: your_password
替换地址和密码的值。
将缓存清空/ cache / *(但不要删除目录本身!)以删除旧配置。我之前遇到过这方面的麻烦,所以建议您最好备份缓存目录......
tar -czf siwappcachebkp.tgz <siwapp_root>/cache/*
要手动配置电子邮件,如果由于某种原因重建缓存失败,则需要专门修改此文件:
<siwapp_root>/cache/siwapp/prod/config/config_factories.yml.php
在文件的末尾,您会发现硬编码到地图的邮件连接详细信息;输入正确的值,你就会好起来。