2017-02-12 11 views
-1

Я делаю свой собственный магазин с Magento, и мне не очень нравится программирование, даже если я знаю некоторые основы. Я использую CE 1.9.3.1 с патчем SUPEE 9652. Я настроил свой .htaccess сЧто в .htaccess может заблокировать cron

Order allow,deny 
Allow from 123.45.678.90 (example IP server Address) 
Deny from all 

Однако хроны по-прежнему заблокированы .htaccess, как когда я удалить (или переименовать) .htaccess, он работает (белая страницу с MYDOMAIN/cron.php). Мой cron установлен из моей хостинговой панели с помощью Cronjob, но отображает ошибку 403 с моим .htaccess.

Может кто-нибудь указать мне, что еще может блокировать cron в моем .htaccess?

############################################ 
## uncomment these lines for CGI mode 
## make sure to specify the correct cgi php binary file name 
## it might be /cgi-bin/php-cgi 

# Action php5-cgi /cgi-bin/php5-cgi 
# AddHandler php5-cgi .php 

############################################ 
## GoDaddy specific options 

# Options -MultiViews 

## you might also need to add this line to php.ini 
##  cgi.fix_pathinfo = 1 
## if it still doesn't work, rename php.ini to php5.ini 

############################################ 
## this line is specific for 1and1 hosting 

#AddType x-mapp-php5 .php 
#AddHandler x-mapp-php5 .php 

############################################ 
## default index file 

DirectoryIndex index.php 

<IfModule mod_php5.c> 

    ############################################ 
    ## adjust memory limit 

    # #php_value memory_limit 64M 
    #php_value memory_limit 256M 
    #php_value max_execution_time 18000 

    ############################################ 
    ## disable magic quotes for php request vars 

    #php_flag magic_quotes_gpc off 

    ############################################ 
    ## disable automatic session start 
    ## before autoload was initialized 

    #php_flag session.auto_start off 

    ############################################ 
    ## enable resulting html compression 

    ##php_flag zlib.output_compression on 

    ########################################### 
    # disable user agent verification to not break multiple image upload 

    #php_flag suhosin.session.cryptua off 

    ########################################### 
    # turn off compatibility with PHP4 when dealing with objects 

    #php_flag zend.ze1_compatibility_mode Off 

</IfModule> 

<IfModule mod_security.c> 
    ########################################### 
    # disable POST processing to not break multiple image upload 

    SecFilterEngine Off 
    SecFilterScanPOST Off 
</IfModule> 

<IfModule mod_deflate.c> 

    ############################################ 
    ## enable apache served files compression 
    ## http://developer.yahoo.com/performance/rules.html#gzip 

    # Insert filter on all content 
    ###SetOutputFilter DEFLATE 
    # Insert filter on selected content types only 
    #AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript 

    # Netscape 4.x has some problems... 
    #BrowserMatch ^Mozilla/4 gzip-only-text/html 

    # Netscape 4.06-4.08 have some more problems 
    #BrowserMatch ^Mozilla/4\.0[678] no-gzip 

    # MSIE masquerades as Netscape, but it is fine 
    #BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 

    # Don't compress images 
    #SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary 

    # Make sure proxies don't deliver the wrong content 
    #Header append Vary User-Agent env=!dont-vary 

</IfModule> 

<IfModule mod_ssl.c> 

    ############################################ 
    ## make HTTPS env vars available for CGI mode 

    SSLOptions StdEnvVars 

</IfModule> 

<IfModule mod_rewrite.c> 

    ############################################ 
    ## enable rewrites 

    Options +SymLinksIfOwnerMatch 
    RewriteEngine on 

    ############################################ 
    ## you can put here your magento root folder 
    ## path relative to web root 

    #RewriteBase /magento/ 

    ############################################ 
    ## uncomment next line to enable light API calls processing 

    # RewriteRule ^api/([a-z][0-9a-z_]+)/?$ api.php?type=$1 [QSA,L] 

    ############################################ 
    ## rewrite API2 calls to api.php (by now it is REST only) 

    RewriteRule ^api/rest api.php?type=rest [QSA,L] 

    ############################################ 
    ## workaround for HTTP authorization 
    ## in CGI environment 

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 

    ############################################ 
    ## TRACE and TRACK HTTP methods disabled to prevent XSS attacks 



    <IfModule mod_setenvif.c> 
     <IfModule mod_headers.c> 

      ############################################ 
      # X-Content-Type-Options: nosniff disable content-type sniffing on some browsers. 
      Header set X-Content-Type-Options: nosniff 

      ############################################ 
      # This header forces to enables the Cross-site scripting (XSS) filter in browsers (if disabled) 
      BrowserMatch \bMSIE\s8 ie8 
      Header set X-XSS-Protection: "1; mode=block" env=!ie8 

     </IfModule> 
    </IfModule> 

    ############################################ 
    ## redirect for mobile user agents 

    #RewriteCond %{REQUEST_URI} !^/mobiledirectoryhere/.*$ 
    #RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC] 
    #RewriteRule ^(.*)$ /mobiledirectoryhere/ [L,R=302] 

    ############################################ 
    ## always send 404 on missing files in these folders 

    RewriteCond %{REQUEST_URI} !^/(media|skin|js)/ 

    ############################################ 
    ## never rewrite for existing files, directories and links 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-l 

    ############################################ 
    ## rewrite everything else to index.php 

    RewriteRule .* index.php [L] 

</IfModule> 


############################################ 
## Prevent character encoding issues from server overrides 
## If you still have problems, use the second line instead 

AddDefaultCharset Off 
#AddDefaultCharset UTF-8 

<IfModule mod_expires.c> 

    ############################################ 
    ## Add default Expires header 
    ## http://developer.yahoo.com/performance/rules.html#expires 

    ExpiresDefault "access plus 1 year" 

</IfModule> 

############################################ 
## By default allow all access 

# Order allow,deny 
# Allow from all 

########################################### 
## Deny access to release notes to prevent disclosure of the installed Magento version 

<Files RELEASE_NOTES.txt> 
    order allow,deny 
    deny from all 
</Files> 

############################################ 
## If running in cluster environment, uncomment this 
## http://developer.yahoo.com/performance/rules.html#etags 

#FileETag none 

########################################### 
## Deny access to cron.php 
<Files cron.php> 

    ############################################ 
    ## uncomment next lines to enable cron access with base HTTP authorization 
    ## http://httpd.apache.org/docs/2.2/howto/auth.html 
    ## 
    ## Warning: .htpasswd file should be placed somewhere not accessible from the web. 
    ## This is so that folks cannot download the password file. 
    ## For example, if your documents are served out of /usr/local/apache/htdocs 
    ## you might want to put the password file(s) in /usr/local/apache/. 

    AuthName "Cron auth" 
    AuthUserFile ../.htpasswd 
    AuthType basic 
    Require valid-user 

    ############################################ 

    Order allow,deny 
    Allow from 123.45.678.90 (example IP server Address) 
    Deny from all 


</Files> 

Благодарим за помощь!

+0

вы также включили HTTP Authentication - предположительно, вы передаете соответствующие полномочия? – MrWhite

+0

Я думаю, это не так, поскольку я использую SSL-сертификат на сайте. Я попытался прокомментировать эту строку: RewriteRule. * - [E = HTTP_AUTHORIZATION:% {HTTP: Авторизация}] Но это не помогло ... – benjamin

+0

@ w3dk Любую другую строку/код, который я должен добавить/комментировать для запуска cron? – benjamin

ответ

0

Наконец-то выяснилось ... это была ошибка с моей стороны. я прокомментировал линии

AuthName "Cron auth" 
AuthUserFile ../.htpasswd 
AuthType basic 
Require valid-user 

, как они заслуживают того, чтобы защитить код с помощью пароля. (!) Кто-то из моего хостинг-провайдера предложил мне раскомментировать их

Но главное дело доносился из

<Files cron.php> 

, как установить мой Magento находится в папке, мне пришлось изменить его следующим образом:

<Files folder/cron.php> 

логи сервера ошибок помогли мне понять это ...